Files
2026-07-08 23:01:55 +04:00

58 lines
1.3 KiB
YAML

name: application-skeleton
services:
application:
build:
context: ../../
dockerfile: deploy/local/python.Dockerfile
container_name: application-skeleton-application
command: [
"python", "-m", "entry.log_user_messages",
"--queue=application.skeleton",
"--exchange=amq.topic",
"--routing-key=user.message.*"
]
stop_grace_period: 3s
depends_on:
rabbitmq:
condition: service_healthy
redis:
condition: service_healthy
volumes:
- ../../:/opt/app
networks:
- application-skeleton-network
rabbitmq:
image: rabbitmq:4.3-management
container_name: application-skeleton-rabbitmq
environment:
RABBITMQ_DEFAULT_USER: ${RABBITMQ_USER}
RABBITMQ_DEFAULT_PASS: ${RABBITMQ_PASS}
healthcheck:
test: rabbitmq-diagnostics ping
interval: 3s
timeout: 5s
retries: 10
start_period: 10s
networks:
- application-skeleton-network
ports:
- "15672:15672"
redis:
image: redis:8-alpine
container_name: application-skeleton-redis
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 3s
timeout: 5s
retries: 10
start_period: 10s
networks:
- application-skeleton-network
networks:
application-skeleton-network:
external: false