diff --git a/routing/docker-compose.yml b/routing/docker-compose.yml new file mode 100644 index 0000000..949ea58 --- /dev/null +++ b/routing/docker-compose.yml @@ -0,0 +1,103 @@ +version: '3.9' + +services: + swag: + image: lscr.io/linuxserver/swag + container_name: swag + restart: unless-stopped + cap_add: + - NET_ADMIN + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Athens + - URL=${DOMAIN} + - VALIDATION=dns + - SUBDOMAINS=wildcard + - DNSPLUGIN=cloudflare + - EMAIL=${EMAIL} + - ONLY_SUBDOMAINS=false + - STAGING=false + volumes: + - '/home/nick/configs/routing/swag:/config' + - '/mnt/storage:/static:ro' + ports: + - 443:443 + - 80:80 + networks: + - proxy + + cloudflare_argo_tunnel: + image: cloudflare/cloudflared + container_name: cloudflared + restart: unless-stopped + volumes: + - '/home/nick/configs/routing/cloudflared:/etc/cloudflared' + networks: + - proxy + command: tunnel --no-autoupdate --no-tls-verify --origincert /etc/cloudflared/cert.pem --hostname ${DOMAIN} --origin-server-name *.${DOMAIN} --url https://swag:443 + user: '1000:1000' + + cloudflare_ddns: + image: oznu/cloudflare-ddns + container_name: cloudflare_ddns + restart: unless-stopped + environment: + - API_KEY=${CF_API_KEY} + - ZONE=${DOMAIN} + - SUBDOMAIN=ddns + - PROXIED=false + network_mode: bridge + + tor: + image: dperson/torproxy + container_name: tor + restart: unless-stopped + environment: + - TZ=Europe/Athens + - USERID=1000 + - GROUPID=1000 + ports: + - '8118:8118' + - '9050:9050' + networks: + - tor + + homer_private: + image: b4bz/homer + container_name: homer_private + restart: unless-stopped + volumes: + - '/home/nick/configs/routing/homer:/www/assets' + environment: + - UID=1000 + - GID=1000 + networks: + - proxy + + homer_social: + image: b4bz/homer + container_name: homer_social + restart: unless-stopped + volumes: + - '/home/nick/configs/routing/social:/www/assets' + environment: + - UID=1000 + - GID=1000 + networks: + - proxy + + whoami: + image: containous/whoami + container_name: whoami + restart: unless-stopped + networks: + - proxy + +networks: + proxy: + external: true + name: proxy + tor: + external: true + name: proxy