forked from skoruba/IdentityServer4.Admin
-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yml
128 lines (128 loc) · 7.2 KB
/
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
version: '3.4'
services:
nginx-proxy:
image: jwilder/nginx-proxy
container_name: nginx
ports:
- '80:80'
- '443:443'
volumes:
- '/var/run/docker.sock:/tmp/docker.sock:ro'
- './shared/nginx/vhost.d:/etc/nginx/vhost.d'
- './shared/nginx/certs:/etc/nginx/certs:ro'
networks:
proxy: null
identityserverui:
aliases:
- sts.skoruba.local
- admin.skoruba.local
- admin-api.skoruba.local
restart: always
skoruba.identityserver4.admin:
image: '${DOCKER_REGISTRY-}skoruba-identityserver4-admin'
build:
context: .
dockerfile: src/Skoruba.IdentityServer4.Admin/Dockerfile
container_name: skoruba-identityserver4-admin
environment:
- VIRTUAL_HOST=admin.skoruba.local
- 'ConnectionStrings__ConfigurationDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__PersistedGrantDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__IdentityDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__AdminLogDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__AdminAuditLogDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__DataProtectionDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'AdminConfiguration__IdentityAdminBaseUrl=https://admin.skoruba.local'
- 'AdminConfiguration__IdentityAdminRedirectUri=https://admin.skoruba.local/signin-oidc'
- 'AdminConfiguration__IdentityServerBaseUrl=https://sts.skoruba.local'
- AdminConfiguration__RequireHttpsMetadata=false
- 'IdentityServerData__Clients__0__ClientUri=https://admin.skoruba.local'
- 'IdentityServerData__Clients__0__RedirectUris__0=https://admin.skoruba.local/signin-oidc'
- 'IdentityServerData__Clients__0__FrontChannelLogoutUri=https://admin.skoruba.local/signin-oidc'
- 'IdentityServerData__Clients__0__PostLogoutRedirectUris__0=https://admin.skoruba.local/signout-callback-oidc'
- 'IdentityServerData__Clients__0__AllowedCorsOrigins__0=https://admin.skoruba.local'
- 'IdentityServerData__Clients__1__RedirectUris__0=https://admin-api.skoruba.local/swagger/oauth2-redirect.html'
- 'Serilog__WriteTo__1__Args__connectionString=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- DockerConfiguration__UpdateCaCertificate=true
- ASPNETCORE_ENVIRONMENT=Development
command: dotnet Skoruba.IdentityServer4.Admin.dll /seed
depends_on:
- db
- skoruba.identityserver4.sts.identity
volumes:
- './shared/serilog.json:/app/serilog.json'
- './shared/identitydata.json:/app/identitydata.json'
- './shared/identityserverdata.json:/app/identityserverdata.json'
- './shared/nginx/certs/cacerts.crt:/usr/local/share/ca-certificates/cacerts.crt'
networks:
identityserverui: null
skoruba.identityserver4.admin.api:
image: '${DOCKER_REGISTRY-}skoruba-identityserver4-admin-api'
build:
context: .
dockerfile: src/Skoruba.IdentityServer4.Admin.Api/Dockerfile
container_name: skoruba-identityserver4-admin-api
environment:
- VIRTUAL_HOST=admin-api.skoruba.local
- AdminApiConfiguration__RequireHttpsMetadata=false
- 'AdminApiConfiguration__ApiBaseUrl=https://admin-api.skoruba.local'
- 'AdminApiConfiguration__IdentityServerBaseUrl=https://sts.skoruba.local'
- 'ConnectionStrings__ConfigurationDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__PersistedGrantDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__IdentityDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__AdminLogDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__AdminAuditLogDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__DataProtectionDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- DockerConfiguration__UpdateCaCertificate=true
- ASPNETCORE_ENVIRONMENT=Development
volumes:
- './shared/serilog.json:/app/serilog.json'
- './shared/nginx/certs/cacerts.crt:/usr/local/share/ca-certificates/cacerts.crt'
networks:
identityserverui: null
skoruba.identityserver4.sts.identity:
image: '${DOCKER_REGISTRY-}skoruba-identityserver4-sts-identity'
build:
context: .
dockerfile: src/Skoruba.IdentityServer4.STS.Identity/Dockerfile
container_name: skoruba-identityserver4-sts-identity
environment:
- VIRTUAL_HOST=sts.skoruba.local
- 'ConnectionStrings__ConfigurationDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__PersistedGrantDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__IdentityDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'ConnectionStrings__DataProtectionDbConnection=Server=db;Database=IdentityServer4Admin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true'
- 'AdminConfiguration__IdentityAdminBaseUrl=https://admin.skoruba.local'
- 'AdvancedConfiguration__PublicOrigin=https://sts.skoruba.local'
- 'AdvancedConfiguration__IssuerUri=https://sts.skoruba.local'
- DockerConfiguration__UpdateCaCertificate=true
- ASPNETCORE_ENVIRONMENT=Development
depends_on:
- db
volumes:
- './shared/serilog.json:/app/serilog.json'
- './shared/nginx/certs/cacerts.crt:/usr/local/share/ca-certificates/cacerts.crt'
networks:
identityserverui:
aliases:
- sts.skoruba.local
db:
image: 'mcr.microsoft.com/mssql/server:2017-CU20-ubuntu-16.04'
ports:
- '7900:1433'
container_name: skoruba-identityserver4-db
environment:
SA_PASSWORD: '${DB_PASSWORD:-Password_123}'
ACCEPT_EULA: 'Y'
volumes:
- 'dbdata:/var/opt/mssql'
networks:
identityserverui: null
volumes:
dbdata:
driver: local
networks:
proxy:
driver: bridge
identityserverui:
driver: bridge