version: "3.8" services: app: image: git.coopcloud.tech/coop-cloud-chaos-patchs/adapt_authoring:0.11.1 networks: - proxy - internal environment: - PORT=5000 - DOMAIN - DB_HOST=db - DB_NAME=adapt - DB_USER=adapt #- DB_PASSWORD_FILE=/var/run/secrets/db_password - SESSION_KEY_FILE=/var/run/secrets/session_key - ADMIN_EMAIL - ADMIN_PASSWORD_FILE=/var/run/secrets/admin_password - FROM_EMAIL depends_on: - db # entrypoint: ['tail', '-f', '/dev/null'] volumes: - adapt_data:/adapt_authoring/data - adapt_conf:/adapt_authoring/conf - adapt_frontend_build:/adapt_authoring/frontend/build - adapt_temp:/adapt_authoring/temp secrets: #- db_password - session_key - admin_password # 3wc: This seems to succeed within the container, but isn't yet working here #healthcheck: # test: ["CMD", "curl", "-f", "http://localhost:5000"] # interval: 30s # timeout: 10s # retries: 10 # start_period: 5m deploy: restart_policy: condition: on-failure labels: - "traefik.enable=true" - "traefik.docker.network=proxy" - "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=5000" - "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`)" - "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}" - "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure" - "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect" - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true" - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}" - "coop-cloud.${STACK_NAME}.version=0.2.0+0.11.1" db: image: mongo:3.7 volumes: - db:/data/db networks: - internal labels: - "traefik.enable=false" networks: proxy: external: true internal: volumes: db: adapt_conf: adapt_data: adapt_temp: adapt_frontend_build: secrets: session_key: external: true name: ${STACK_NAME}_session_key_${SECRET_SESSION_KEY_VERSION} admin_password: external: true name: ${STACK_NAME}_admin_password_${SECRET_ADMIN_PASSWORD_VERSION}