caddy-cloudflaredns adds Cloudflare LetsEncrypt support to the base Caddy 2 image.
500K+
Please see the official Caddy Docker Image for deployment instructions.
Few things to note:
You should add CLOUDFLARE_EMAIL and CLOUDFLARE_API_TOKEN as environment variables to your docker run command. Example:
docker run -it --name caddy \
-p 80:80 \
-p 443:443 \
-v caddy_data:/data \
-v caddy_config:/config \
-v $PWD/Caddyfile:/etc/caddy/Caddyfile \
-e [email protected] \
-e CLOUDFLARE_API_TOKEN=12345 \
-e ACME_AGREE=true \
slothcroissant/caddy-cloudflaredns:latest
You can obtain your Cloudflare API token via the Cloudflare Portal. To create a API token with minimal scope, the following steps are needed:
Log into your dashboard, go to account settings, create API token
grant the following permissions:
You should add the following to your Caddyfile as the tls directive. Note that I haven't figured out why the using {env.CLOUDFLARE_EMAIL} for the email address didn't work, so for now I've got it manually declared:
tls [email protected] {
dns cloudflare {env.CLOUDFLARE_API_TOKEN}
}
This image now supports tagging! See available tags here. To select a specific version of caddy, set your Docker image tag to the caddy version you'd like to use.
Example: slothcroissant/caddy-cloudflaredns:2.4.3
Content type
Image
Digest
sha256:e1435a367…
Size
39.3 MB
Last updated
4 months ago
docker pull slothcroissant/caddy-cloudflaredns