Caddy with Cloudflare integration. For linux/arm64/v8 only.
827
starrbuck68/caddy-cloudflare
Caddy with Cloudflare integration. For linux/arm64/v8 only.
You can obtain a Cloudflare API token using the Cloudflare Portal. To create an API token with minimal scope, use the following steps:
Log into your dashboard, go to your profile, click on API Tokens, hit Create Token, select custom token, and grant the following permissions:
Copy down your token in a safe place.
Add CLOUDFLARE_API_TOKEN as an environment to your Docker Compose file:
services:
caddy:
image: starrbuck68/caddy-cloudflare:0.0.1
container_name: caddy-cloudflare
restart: unless-stopped
cap_add:
- NET_ADMIN
environment:
- CLOUDFLARE_API_TOKEN=ahdhoawhroeiqwouheriouaghoisgfhoius
ports:
- 80:80
- 443:443
- 443:443/udp
volumes:
- ./caddy/Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
- /var/www/html:/srv
volumes:
caddy_data:
external: true
caddy_config:
external: trueYou may have to create the external caddy volumes with
docker volume create caddy_datadocker volume create caddy_configYou should add the following to the top of your Caddyfile. Remove the acme_ca line referencing the staging server when you are satisfied with your testing:
{
acme_ca https://acme-staging-v02.api.letsencrypt.org/directory
acme_dns cloudflare {env.CLOUDFLARE_API_TOKEN}
}Then remember to add the tls directive to your site(s):
www.yourdomain.com {
root * /srv
file_server
encode gzip
tls {
dns cloudflare {env.CLOUDFLARE_API_TOKEN}
resolvers 1.1.1.1 1.0.0.1
}
}Content type
Image
Digest
sha256:d3d66b762…
Size
40.4 MB
Last updated
about 2 years ago
docker pull starrbuck68/caddy-cloudflare