services: nginx: image: git.limbosolutions.com/kb/nginx-geoip:latest volumes: - nginx-conf.d:/etc/nginx/conf.d - letsencrypt-conf:/etc/letsencrypt - certbot-www:/var/www/certbot - nginx-log:/var/log/nginx ports: - 443:443 - 80:80 #- 8080:8080 - 2222:2222 networks: - wan_reverse_proxy_public - private command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'" restart: unless-stopped certbot: image: certbot/certbot entrypoint: /bin/sh command: -c "/scripts/refresh-certs" volumes: - letsencrypt-conf:/etc/letsencrypt - certbot-www:/var/www/certbot - certbot-scripts:/scripts restart: unless-stopped promtail: image: grafana/promtail volumes: - nginx-log:/mnt/nginx-logs - promtail_etc:/etc/promtail environment: - PROMTAIL_LOKISERVER_ADDRESS=${PROMTAIL_LOKISERVER_ADDRESS} command: -config.file=/etc/promtail/config.yml -config.expand-env=true networks: - private duplicati: image: duplicati-mysqlclient:latest command: /usr/bin/duplicati-server --webservice-port=8200 --webservice-interface=any --webservice-allowed-hostnames=* volumes: - duplicati_tmpdata:/data - nginx-conf.d:/bck/nginx-conf.d - letsencrypt-conf:/bck/letsencrypt-conf - certbot-www:/bck/certbot-www - duplicati_tmpdata:/bck/duplicati_tmpdata - certbot-scripts:/bck/certbot-scripts ports: - 8205:8200 networks: - private - wan_reverse_proxy_public restart: unless-stopped volumes: certbot-scripts: nginx-conf.d: letsencrypt-conf: certbot-www: duplicati_tmpdata: telegraf-etc: nginx-log: promtail_etc: networks: wan_reverse_proxy_public: external: true private: