version: '3.3' services: webhook: image: cryptkiddie2/webhook-docker:latest restart: always labels: - traefik.frontend.rule=Host:${WEBHOOK_DOMAIN} - traefik.port=9000 - traefik.docker.network=web networks: - extern expose: - 9000 volumes: - ${DATA_ROOT}/webhook/:/webhook - ${DATA_ROOT}/repo/:/repo command: [-hooks, /webhook/hooks.json, -verbose] jekyll: image: jekyll/jekyll restart: always command: [/usr/jekyll/bin/jekyll, build, --source, /repo/, --destination, /static, --watch] volumes: - ${DATA_ROOT}/repo/:/repo - ${DATA_ROOT}/static/:/static nginx: image: nginx:latest restart: always volumes: - ${DATA_ROOT}/static/:/usr/share/nginx/html - ./configs/nginx:/etc/nginx labels: - traefik.frontend.rule=Host:${DOMAIN} - traefik.port=80 - traefik.docker.network=web networks: - extern expose: - 80 www-redirector: image: cryptkiddie2/redirector:latest restart: always expose: - 80 labels: - traefik.frontend.rule=Host:${REDIRECT_DOMAIN} - traefik.port=80 - traefik.frontend.passHostHeader=true environment: - dest=https://${DOMAIN} networks: extern: networks: extern: external: name: web