49 lines
1.3 KiB
YAML
49 lines
1.3 KiB
YAML
version: '3.9'
|
|
|
|
services:
|
|
nginx:
|
|
image: nginx
|
|
restart: unless-stopped
|
|
command: nginx -c /config/nginx.conf
|
|
volumes:
|
|
- /home/nick/configs/routing/nginx:/config
|
|
- /mnt/storage:/static:ro
|
|
ports:
|
|
- 80:80
|
|
- 443:443
|
|
extra_hosts:
|
|
- host.docker.internal:host-gateway
|
|
|
|
certbot:
|
|
image: certbot/dns-cloudflare
|
|
restart: unless-stopped
|
|
entrypoint: "/bin/sh -c \"trap exit TERM; while :; do certbot renew --post-hook 'chown -R 1000:1000 /etc/letsencrypt'; sleep 12h & wait $${!}; done;\""
|
|
volumes:
|
|
- /home/nick/configs/routing/nginx/certs/letsencrypt:/etc/letsencrypt
|
|
|
|
cloudflare-argo-tunnel:
|
|
image: cloudflare/cloudflared
|
|
restart: unless-stopped
|
|
volumes:
|
|
- /home/nick/configs/routing/cloudflared:/etc/cloudflared
|
|
command: tunnel run --url https://nginx:443 --no-tls-verify jupiter
|
|
user: 1000:1000
|
|
|
|
cloudflare-ddns:
|
|
image: oznu/cloudflare-ddns
|
|
restart: unless-stopped
|
|
environment:
|
|
API_KEY: ${CF_API_KEY}
|
|
ZONE: ${DOMAIN}
|
|
SUBDOMAIN: ddns
|
|
PROXIED: false
|
|
network_mode: bridge
|
|
|
|
whoami:
|
|
image: containous/whoami
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
default:
|
|
name: routing
|