Add project files.

This commit is contained in:
Khwezi Mngoma
2026-06-05 22:07:25 +02:00
parent 59ea7de742
commit 437e8c5c08
978 changed files with 151911 additions and 0 deletions
+142
View File
@@ -0,0 +1,142 @@
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
litecharmssecurity.admin:
image: '${DOCKER_REGISTRY-}skoruba-duende-identityserver-admin'
build:
context: .
dockerfile: src/LiteCharmsSecurity.Admin/Dockerfile
container_name: skoruba-duende-identityserver-admin
environment:
- VIRTUAL_PORT=8080
- VIRTUAL_HOST=admin.skoruba.local
- 'ConnectionStrings__DataProtectionDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'AdminConfiguration__AuthenticationConfiguration__Authority=https://sts.skoruba.local'
- 'AdminConfiguration__ApiConfiguration__ApiRemoteConfiguration__RemoteUrl=https://admin-api.skoruba.local'
- 'AdminConfiguration__BasicConfiguration__Title=Lite Charms Security'
- 'AdminConfiguration__BasicConfiguration__BasePath=/'
- ForwardedHeadersConfiguration__Enabled=true
- ForwardedHeadersConfiguration__AllowAll=true
- ForwardedHeadersConfiguration__ForwardLimit=1
- DockerConfiguration__UpdateCaCertificate=true
- ASPNETCORE_ENVIRONMENT=Development
depends_on:
- db
- litecharmssecurity.sts.identity
volumes:
- './shared/serilog.json:/app/serilog.json'
- './shared/nginx/certs/cacerts.crt:/usr/local/share/ca-certificates/cacerts.crt'
networks:
identityserverui: null
litecharmssecurity.admin.api:
image: '${DOCKER_REGISTRY-}skoruba-duende-identityserver-admin-api'
build:
context: .
dockerfile: src/LiteCharmsSecurity.Admin.Api/Dockerfile
container_name: skoruba-duende-identityserver-admin-api
environment:
- VIRTUAL_PORT=8080
- VIRTUAL_HOST=admin-api.skoruba.local
- AdminApiConfiguration__RequireHttpsMetadata=false
- 'AdminApiConfiguration__ApplicationName=Lite Charms Security UI'
- 'AdminApiConfiguration__ApiBaseUrl=https://admin-api.skoruba.local'
- 'AdminApiConfiguration__IdentityServerBaseUrl=https://sts.skoruba.local'
- 'ConnectionStrings__ConfigurationDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__PersistedGrantDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__IdentityDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__AdminLogDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__AdminAuditLogDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__AdminConfigurationDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__DataProtectionDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- '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'
- 'SeedConfiguration__ApplySeed=true'
- 'DatabaseMigrationsConfiguration__ApplyDatabaseMigrations=true'
- ForwardedHeadersConfiguration__Enabled=true
- ForwardedHeadersConfiguration__AllowAll=true
- ForwardedHeadersConfiguration__ForwardLimit=1
- DockerConfiguration__UpdateCaCertificate=true
- ASPNETCORE_ENVIRONMENT=Development
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
litecharmssecurity.sts.identity:
image: '${DOCKER_REGISTRY-}skoruba-duende-identityserver-sts-identity'
build:
context: .
dockerfile: src/LiteCharmsSecurity.STS.Identity/Dockerfile
container_name: skoruba-duende-identityserver-sts-identity
environment:
- VIRTUAL_PORT=8080
- VIRTUAL_HOST=sts.skoruba.local
- 'ConnectionStrings__ConfigurationDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__PersistedGrantDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__IdentityDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'ConnectionStrings__DataProtectionDbConnection=Server=db;Database=IdentityServerAdmin;User Id=sa;Password=${DB_PASSWORD:-Password_123};MultipleActiveResultSets=true;TrustServerCertificate=True'
- 'AdminConfiguration__IdentityAdminBaseUrl=https://admin.skoruba.local'
- 'IdentityServerOptions__IssuerUri=https://sts.skoruba.local'
- IdentityServerOptions__KeyManagement__Enabled=true
- IdentityServerOptions__Events__RaiseErrorEvents=true
- IdentityServerOptions__Events__RaiseInformationEvents=true
- IdentityServerOptions__Events__RaiseFailureEvents=true
- IdentityServerOptions__Events__RaiseSuccessEvents=true
- ServerSideSessionsConfiguration__Enabled=true
- ForwardedHeadersConfiguration__Enabled=true
- ForwardedHeadersConfiguration__AllowAll=true
- ForwardedHeadersConfiguration__ForwardLimit=1
- 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-duende-identityserver-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