diff --git a/compose.yml b/compose.yml index df99538..d0c3a7d 100644 --- a/compose.yml +++ b/compose.yml @@ -1,6 +1,4 @@ ---- version: "3.8" - x-env: &env DOMAIN: EMAIL_ERROR: @@ -33,7 +31,6 @@ x-env: &env SMTP_PASSWORD_FILE: /run/secrets/smtp_password SMTP_PORT: SMTP_USER_NAME: - x-configs: &configs - source: app_config target: /usr/src/app/config/app_config.yml @@ -44,12 +41,10 @@ x-configs: &configs - source: entrypoint target: /usr/src/app/docker-entrypoint.sh mode: 0555 - x-secrets: &secrets - db_password - secret_key_base - smtp_password - services: app: image: &image foodcoops/foodsoft:4.7.1 @@ -60,7 +55,7 @@ services: configs: *configs entrypoint: &entrypoint /usr/src/app/docker-entrypoint.sh environment: - <<: *env + !!merge <<: *env FOODSOFT_SERVICE: app healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3000"] @@ -78,36 +73,40 @@ services: - "traefik.http.routers.foodsoft.entrypoints=web-secure" - "traefik.http.services.foodsoft.loadbalancer.server.port=3000" - "traefik.http.routers.foodsoft.tls.certresolver=${LETS_ENCRYPT_ENV}" - + - coop-cloud.${STACK_NAME}.app.version=4.7.1-99afb9a3 cron: image: *image environment: - <<: *env + !!merge <<: *env FOODSOFT_SERVICE: cron configs: *configs entrypoint: *entrypoint secrets: *secrets networks: - internal - + deploy: + labels: + - coop-cloud.${STACK_NAME}.cron.version=*image- worker: image: *image environment: - <<: *env + !!merge <<: *env FOODSOFT_SERVICE: worker configs: *configs entrypoint: *entrypoint secrets: *secrets networks: - internal - + deploy: + labels: + - coop-cloud.${STACK_NAME}.worker.version=*image- smtp: image: *image configs: *configs entrypoint: *entrypoint secrets: *secrets environment: - <<: *env + !!merge <<: *env FOODSOFT_SERVICE: smtp SMTP_SERVER_HOST: SMTP_SERVER_PORT: @@ -120,7 +119,7 @@ services: - "traefik.tcp.routers.foodsoft-smtp.rule=HostSNI(`*`)" - "traefik.tcp.routers.foodsoft-smtp.entrypoints=foodsoft-smtp" - "traefik.tcp.services.foodsoft-smtp.loadbalancer.server.port=${SMTP_SERVER_PORT}" - + - coop-cloud.${STACK_NAME}.smtp.version=*image- db: image: "mariadb:10.6" command: "mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_520_ci" @@ -136,20 +135,22 @@ services: - "db:/var/lib/mysql" networks: - internal - + deploy: + labels: + - coop-cloud.${STACK_NAME}.db.version=10.6-171746d0 cache: image: "redis:6" networks: - internal - + deploy: + labels: + - coop-cloud.${STACK_NAME}.cache.version=6-7e2c6181 networks: internal: proxy: external: true - volumes: db: - configs: app_config: name: ${STACK_NAME}_app_config_${APP_CONFIG_VERSION} @@ -167,7 +168,6 @@ configs: name: ${STACK_NAME}_production_env_${PRODUCTION_ENV_VERSION} file: production.rb.tmpl template_driver: golang - secrets: db_password: name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}