# 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 -f http://caddy:6752/ --max-time 80 --header 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.3 Safari/605.1.15'"] interval: 30s start_period: 20s timeout: 80s retries: 3 restart: always web: build: context: ./ dockerfile: ./Dockerfile command: python3 -m server server volumes: # - ./.env:/app/.env # - ./server/user_data/logs:/app/server/user_data/logs - .:/app - ./core/medium_parser/:/app/medium_parser - ./core/rl_string_helper/:/app/rl_string_helper # develop: # watch: # - action: rebuild # path: ./server # target: /app/server # - action: rebuild # path: ./core # target: /app/core # - action: rebuild # path: ./rl_string_helper # target: /app/rl_string_helper # - action: rebuild # path: ./database-lib # target: /app/database-lib # - action: rebuild # path: "**/requirements.txt" # - action: rebuild # path: "**/requirements-fast.txt" expose: - 7080 networks: - web_network healthcheck: test: ["CMD-SHELL", "curl -f http://localhost:7080/ --max-time 80 --header 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.3 Safari/605.1.15'"] interval: 30s start_period: 20s timeout: 80s retries: 3 restart: always mem_limit: 2g 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