Repository navigation
Expand file tree
/
Copy pathcompose.yml
More file actions
97 lines (96 loc) · 2.98 KB
/
Copy pathcompose.yml
File metadata and controls
97 lines (96 loc) · 2.98 KB
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
services:
cms:
build: .
container_name: cms
environment:
- OIDC_ISSUER=https://${AUTH_DOMAIN}
- OIDC_REDIRECT_URI=https://${CMS_DOMAIN}/api/oidc/callback
- OIDC_CLIENT_ID_FILE=/run/secrets/oidc_strapi_id
- OIDC_CLIENT_SECRET_FILE=/run/secrets/oidc_strapi_client_secret
- OIDC_SCOPES
# Trust the dev CA so Node's fetch can reach Authelia over self-signed TLS.
- NODE_EXTRA_CA_CERTS=/run/certs/fullchain.pem
expose:
- 1337
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:1337/admin/init"]
interval: 10s
timeout: 5s
retries: 3
start_period: 30s
secrets:
- oidc_strapi_id
- oidc_strapi_client_secret
volumes:
- './data/common/certs/fullchain.pem:/run/certs/fullchain.pem:ro'
proxy:
image: nginx:1.27-alpine
container_name: proxy
hostname: ${DOMAIN}
networks:
default:
aliases:
- ${CMS_DOMAIN}
- ${AUTH_DOMAIN}
depends_on:
- idp
- cms
environment:
- AUTH_DOMAIN
- CMS_DOMAIN
- DOMAIN
ports:
- "80:80"
- "443:443"
restart: "unless-stopped"
volumes:
- './config/nginx/nginx.conf:/etc/nginx/nginx.conf:ro'
- './config/nginx/snippets:/etc/nginx/snippets:ro'
- './config/nginx/templates:/etc/nginx/templates:ro'
- './data/common/certs/fullchain.pem:/config/keys/cert.crt:ro'
- './data/common/certs/serverkey.pem:/config/keys/cert.key:ro'
idp:
image: "authelia/authelia:4.39"
container_name: idp
environment:
- AUTH_DOMAIN
- CMS_DOMAIN
- AUTHELIA_IDENTITY_PROVIDERS_OIDC_HMAC_SECRET_FILE=/run/secrets/hmac_secret
- AUTHELIA_IDENTITY_VALIDATION_RESET_PASSWORD_JWT_SECRET_FILE=/run/secrets/jwt_secret
- AUTHELIA_SESSION_SECRET_FILE=/run/secrets/auth_session_secret
- AUTHELIA_STORAGE_ENCRYPTION_KEY_FILE=/run/secrets/auth_storage_key
- DOMAIN
- OIDC_SCOPES
- ORGANIZATION_NAME=Strapi OIDC
- X_AUTHELIA_CONFIG_FILTERS=template
expose:
- 9091
restart: "unless-stopped"
secrets:
- auth_session_secret
- auth_storage_key
- hmac_secret
- jwks_key
- jwt_secret
- oidc_strapi_id
- oidc_strapi_digest
volumes:
- ./config/authelia/configuration.yml:/config/configuration.yml:ro
- ./config/authelia/users.yml:/config/users.yml:ro
secrets:
auth_session_secret:
file: ./config/authelia/secrets/session-secret.txt
auth_storage_key:
file: ./config/authelia/secrets/storage-key.txt
hmac_secret:
file: ./config/authelia/secrets/hmac-secret.txt
jwks_key:
file: ./config/authelia/secrets/jwks-key.pem
jwt_secret:
file: ./config/authelia/secrets/jwt-secret.txt
oidc_strapi_id:
file: ./config/authelia/secrets/clients/strapi_id.txt
oidc_strapi_digest:
file: ./config/authelia/secrets/clients/strapi_digest.txt
oidc_strapi_client_secret:
file: ./config/authelia/secrets/clients/strapi_client_secret.txt