58 lines
1.3 KiB
YAML
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
|