wekan/compose.yml

110 lines
2.9 KiB
YAML
Raw Permalink Normal View History

2021-10-17 16:03:03 +00:00
version: '3.8'
services:
db:
2022-07-21 11:58:26 +00:00
image: mongo:5.0
2023-06-26 15:09:10 +00:00
command: mongod --oplogSize 128 --quiet
2021-10-17 16:03:03 +00:00
volumes:
- wekan-db:/data/db
networks:
- internal
healthcheck:
test: echo 'db.runCommand("ping").ok' | mongo localhost:27017/test --quiet
interval: 30s
timeout: 10s
retries: 10
start_period: 1m
deploy:
labels:
2021-11-16 17:06:27 +00:00
backupbot.backup: "true"
backupbot.backup.pre-hook: "mongodump --archive=/data/db/wekan.db"
backupbot.backup.post-hook: "rm -rf /data/db/wekan.db"
backupbot.backup.path: "/data/db/wekan.db"
2021-10-17 16:03:03 +00:00
app:
2024-01-30 13:59:18 +00:00
image: quay.io/wekan/wekan:v7.30
2021-10-17 16:03:03 +00:00
environment:
2022-07-21 11:58:26 +00:00
- MONGO_URL=mongodb://db:27017/wekan
2021-10-17 16:03:03 +00:00
- DOMAIN
- ROOT_URL
- DEBUG
2022-03-02 13:28:08 +00:00
- MAIL_URL
- MAIL_FROM
- WITH_API
- RICHER_CARD_COMMENT_EDITOR
- CORS
2023-06-26 15:09:43 +00:00
- CORS_ALLOW_HEADERS
2022-03-02 13:28:08 +00:00
- CORS_EXPOSE_HEADERS
- PASSWORD_LOGIN_ENABLED
2021-10-17 16:03:03 +00:00
- OAUTH2_ENABLED
- OAUTH2_LOGIN_STYLE
- OAUTH2_CLIENT_ID
2022-01-31 16:11:39 +00:00
- OAUTH2_SECRET_FILE=/run/secrets/oauth2_secret
2021-10-17 16:03:03 +00:00
- OAUTH2_SERVER_URL
- OAUTH2_AUTH_ENDPOINT
- OAUTH2_USERINFO_ENDPOINT
- OAUTH2_TOKEN_ENDPOINT
- OAUTH2_REQUEST_PERMISSIONS
- OAUTH2_ID_MAP
- OAUTH2_USERNAME_MAP
- OAUTH2_FULLNAME_MAP
- OAUTH2_EMAIL_MAP
2022-03-02 13:28:08 +00:00
- DEFAULT_AUTHENTICATION_METHOD
- PROPAGATE_OIDC_DATA
2022-07-21 11:58:26 +00:00
- OIDC_REDIRECTION_ENABLED
2021-10-17 16:03:03 +00:00
networks:
2023-06-26 15:09:43 +00:00
- internal
- proxy
2021-10-17 16:03:03 +00:00
depends_on:
- db
2022-01-31 15:34:15 +00:00
healthcheck:
test: node /build/healthcheck.js # no curl for healthcheck in wekan container
2021-10-17 16:03:03 +00:00
interval: 30s
timeout: 10s
retries: 10
start_period: 1m
2022-01-31 16:07:29 +00:00
secrets:
- oauth2_secret
2021-10-17 16:03:03 +00:00
configs:
- source: healthcheck_js
target: /build/healthcheck.js
mode: 0555
2022-01-31 15:48:51 +00:00
- source: entrypoint
target: /home/wekan/app/docker-entrypoint.sh
mode: 0555
entrypoint: /home/wekan/app/docker-entrypoint.sh
2021-10-17 16:03:03 +00:00
deploy:
update_config:
failure_action: rollback
order: start-first
labels:
- "traefik.enable=true"
- "traefik.docker.network=proxy"
2022-01-13 16:25:41 +00:00
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=8080"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`)"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
2024-01-30 13:59:18 +00:00
- "coop-cloud.${STACK_NAME}.version=2.1.0+v7.30"
2023-04-13 18:36:16 +00:00
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}"
2021-10-17 16:03:03 +00:00
volumes:
wekan-db:
2023-06-26 15:09:43 +00:00
2021-10-17 16:03:03 +00:00
networks:
proxy:
external: true
internal:
configs:
healthcheck_js:
name: ${STACK_NAME}_healthcheck_js
file: healthcheck.js
2022-01-31 15:48:51 +00:00
entrypoint:
name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION}
file: entrypoint.sh.tmpl
template_driver: golang
secrets:
oauth2_secret:
name: ${STACK_NAME}_oauth2_secret_${SECRET_OAUTH2_SECRET_VERSION}
2022-02-04 12:35:46 +00:00
external: true