diff --git a/caddy/Caddyfile b/caddy/Caddyfile new file mode 100644 index 0000000..d7eab80 --- /dev/null +++ b/caddy/Caddyfile @@ -0,0 +1,7 @@ +https://skyw.me, https://*.skyw.me { + reverse_proxy http://10.254.0.2 + + tls admin@skyw.me { + dns cloudflare {env.CLOUDFLARE_API_TOKEN} + } +} diff --git a/caddy/Dockerfile b/caddy/Dockerfile new file mode 100644 index 0000000..e3c2e7d --- /dev/null +++ b/caddy/Dockerfile @@ -0,0 +1,8 @@ +FROM caddy:builder AS builder + +RUN xcaddy build \ + --with github.com/caddy-dns/cloudflare + +FROM caddy:latest + +COPY --from=builder /usr/bin/caddy /usr/bin/caddy \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 108cfab..76618d6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,3 +10,23 @@ - ./data/infra:/data:rw restart: unless-stopped + + caddy: + build: ./caddy + + ports: + - 80:80 + - 443:443 + + volumes: + # Caddyfile + - ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro + # data volumes + - ./data/caddy-data:/data:rw + - ./data/caddy-config:/config:rw + + environment: + - ACME_AGREE=true + - CLOUDFLARE_API_TOKEN=${CLOUDFLARE_API_TOKEN} + + restart: unless-stopped