version: "3.4" services: poll: image: mathwave/sprint-repo:ruz-bot environment: STAGE: "production" TELEGRAM_TOKEN: $TELEGRAM_TOKEN_PROD networks: - queues command: poll deploy: mode: replicated restart_policy: condition: any update_config: parallelism: 1 order: start-first worker: image: mathwave/sprint-repo:ruz-bot environment: MONGO_HOST: "mongo.sprinthub.ru" STAGE: "production" MONGO_PASSWORD: $MONGO_PASSWORD_PROD PLATFORM_SECURITY_TOKEN: $PLATFORM_SECURITY_TOKEN networks: - queues command: worker deploy: mode: replicated restart_policy: condition: any update_config: parallelism: 1 order: start-first mailbox: image: mathwave/sprint-repo:ruz-bot environment: STAGE: "production" TELEGRAM_TOKEN: $TELEGRAM_TOKEN_PROD networks: - queues command: mailbox deploy: mode: replicated restart_policy: condition: any update_config: parallelism: 1 order: start-first fetch: image: mathwave/sprint-repo:ruz-bot environment: MONGO_HOST: "mongo.sprinthub.ru" STAGE: "production" MONGO_PASSWORD: $MONGO_PASSWORD_PROD PLATFORM_SECURITY_TOKEN: $PLATFORM_SECURITY_TOKEN DEBUG: "false" networks: - queues command: fetch deploy: mode: replicated restart_policy: condition: any placement: constraints: - node.role == worker - node.labels.zone == ru update_config: parallelism: 1 order: start-first notify: image: mathwave/sprint-repo:ruz-bot environment: MONGO_HOST: "mongo.sprinthub.ru" STAGE: "production" MONGO_PASSWORD: $MONGO_PASSWORD_PROD PLATFORM_SECURITY_TOKEN: $PLATFORM_SECURITY_TOKEN DEBUG: "false" networks: - queues command: notify deploy: mode: replicated restart_policy: condition: any placement: constraints: - node.role == worker - node.labels.zone == ru update_config: parallelism: 1 order: start-first ruz-bot-nginx: image: mathwave/sprint-repo:ruz-bot networks: - common-infra-nginx environment: MONGO_HOST: "mongo.sprinthub.ru" STAGE: "production" MONGO_PASSWORD: $MONGO_PASSWORD_PROD PLATFORM_SECURITY_TOKEN: $PLATFORM_SECURITY_TOKEN DEBUG: "false" command: api deploy: mode: replicated restart_policy: condition: any placement: constraints: - node.role == worker - node.labels.zone == ru update_config: parallelism: 1 order: start-first networks: common-infra-nginx: external: true queues: external: true