infra-modumfiscal/prod/docker-stack.yml
GUILHERME a42d492f67 feat(infra): adiciona RabbitMQ ao stack de produção
- Adiciona serviço rabbitmq:3-management-alpine com volume persistente
- Injeta RABBITMQ_HOST/USERNAME/PASSWORD nos serviços modumfiscal-api e modumfiscal-arquivo-processor

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 20:41:07 -03:00

130 lines
2.9 KiB
YAML

version: "3.9"
services:
nginx:
image: nginx:alpine
ports:
- "80:80"
volumes:
- /opt/infra/prod/nginx/conf.d:/etc/nginx/conf.d:ro
deploy:
replicas: 1
restart_policy:
condition: on-failure
update_config:
order: start-first
networks:
- app-net
modumfiscal-front:
image: git.modumsolucao.com.br/modumsolucao/modumfiscal-web:prod-latest
deploy:
replicas: 1
restart_policy:
condition: on-failure
update_config:
parallelism: 1
delay: 10s
order: start-first
networks:
- app-net
rabbitmq:
image: rabbitmq:3-management-alpine
environment:
- RABBITMQ_DEFAULT_USER=${RABBITMQ_USERNAME}
- RABBITMQ_DEFAULT_PASS=${RABBITMQ_PASSWORD}
ports:
- "15672:15672"
volumes:
- rabbitmq-data:/var/lib/rabbitmq
deploy:
replicas: 1
restart_policy:
condition: on-failure
update_config:
order: start-first
networks:
- app-net
modumfiscal-api:
image: git.modumsolucao.com.br/modumsolucao/modumfiscal-api:prod-latest
environment:
- SPRING_PROFILES_ACTIVE=prod
- RABBITMQ_HOST=rabbitmq
- RABBITMQ_USERNAME=${RABBITMQ_USERNAME}
- RABBITMQ_PASSWORD=${RABBITMQ_PASSWORD}
deploy:
replicas: 2
restart_policy:
condition: on-failure
delay: 200s
max_attempts: 3
update_config:
parallelism: 1
delay: 15s
order: start-first
networks:
- app-net
modumfiscal-arquivo-processor:
image: git.modumsolucao.com.br/modumsolucao/modumfiscal-arquivo-processor:prod-latest
environment:
- SPRING_PROFILES_ACTIVE=prod
- RABBITMQ_HOST=rabbitmq
- RABBITMQ_USERNAME=${RABBITMQ_USERNAME}
- RABBITMQ_PASSWORD=${RABBITMQ_PASSWORD}
deploy:
replicas: 1
restart_policy:
condition: on-failure
delay: 200s
max_attempts: 3
update_config:
parallelism: 1
delay: 15s
order: start-first
networks:
- app-net
modumfiscal-bancario:
image: git.modumsolucao.com.br/modumsolucao/modumfiscal-bancario:prod-latest
environment:
- SPRING_PROFILES_ACTIVE=prod
deploy:
replicas: 1
restart_policy:
condition: on-failure
delay: 200s
max_attempts: 3
update_config:
parallelism: 1
delay: 15s
order: start-first
networks:
- app-net
modumfiscal-nfse:
image: git.modumsolucao.com.br/modumsolucao/modumfiscal-nfse:prod-latest
environment:
- SPRING_PROFILES_ACTIVE=prod
deploy:
replicas: 1
restart_policy:
condition: on-failure
delay: 200s
max_attempts: 3
update_config:
parallelism: 1
delay: 15s
order: start-first
networks:
- app-net
networks:
app-net:
external: true
volumes:
rabbitmq-data: