47 lines
1.2 KiB
YAML
47 lines
1.2 KiB
YAML
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
|