version: "3.3" services: lb: image: haproxy:latest ports: - "80:80" - "443:443" volumes: - "./data/certificates:/certificates" - "./config/lb:/usr/local/etc/haproxy" depends_on: - "certbot" restart: always networks: - internal labels: - meta.role=lb certbot: image: "certbot/certbot" hostname: certbot volumes: - "./data/certificates:/certificates" - "./data/certbot/etc:/etc/letsencrypt" - "./data/certbot/var:/var/lib/letsencrypt" - "./logs/certbot:/var/log/letsencrypt" restart: on-failure networks: - internal labels: - meta.role=certbot #entrypoint: sh -c 'while true; do sleep 1; done' entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 15d & wait $${!}; done;'" rtmp: build: ./rtmp ports: - "1935:1935" - "80:8080" container_name: rtmp_server volumes: - ./data:/tmp/hls auth: build: ./auth container_name: auth_server networks: internal: {}