web/docker-compose-dev.yml
2024-02-09 12:28:56 +06:00

80 lines
1.5 KiB
YAML

# https://blog.thelazyfox.xyz/how-to-create-healthchecks-for-docker/
version: '3.7'
services:
caddy:
build:
context: ./
dockerfile: ./DockerfileCaddy
cap_add:
- NET_ADMIN
ports:
- "6752:6752"
volumes:
- ./CaddyfileDev:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
networks:
- web_network
healthcheck:
test: ["CMD-SHELL", "curl http://caddy:6752/ --max-time 80"]
interval: 30s
start_period: 20s
timeout: 80s
retries: 3
restart: always
web:
build:
context: ./
dockerfile: ./Dockerfile
command: python3 -m server server
volumes:
- .:/app
expose:
- 7080
networks:
- web_network
healthcheck:
test: ["CMD-SHELL", "curl http://localhost:7080/ --max-time 60"]
interval: 30s
start_period: 20s
timeout: 80s
retries: 3
restart: always
dragonfly:
image: 'docker.dragonflydb.io/dragonflydb/dragonfly'
ulimits:
memlock: -1
expose:
- 6379
networks:
- web_network
volumes:
- dragonflydata:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 30s
start_period: 20s
timeout: 10s
retries: 3
restart: always
autoheal:
restart: always
image: willfarrell/autoheal
environment:
- AUTOHEAL_CONTAINER_LABEL=all
volumes:
- /var/run/docker.sock:/var/run/docker.sock
volumes:
caddy_data:
caddy_config:
dragonflydata:
networks:
web_network:
driver: bridge