Skip to content

Caddy 2 caddy-cloudflare-transform adds Cloudflare LetsEncrypt and Transform Encoder support to the base image.

Notifications You must be signed in to change notification settings

Deniom3/caddy-cloudflare-transform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Latest Release caddy on DockerHub Docker Build

caddy-cloudflare-transform

The image includes 3 modules for Caddy: cloudflare, transform-encoder and caddy-exec.

The image is designed to obtain a TLS certificate using dns challenge api cloudflare, and using a log converter based on a desired pattern.

Please see the official Caddy Docker Image for deployment instructions.

Builds are available at the following Docker repositories:

For start 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 \
    deniom3/caddy-cloudflare-transform: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:

  1. Log into your dashboard, go to account settings, create API token

  2. grant the following permissions:

    • Zone / Zone / Read
    • Zone / DNS / Edit

For use you should add the following to your Caddyfile as the tls directive.

tls {$CLOUDFLARE_EMAIL} { 
  dns cloudflare {$CLOUDFLARE_API_TOKEN}
}

To use the log converter you need to add to your Caddyfile conversion rule.

log {
   output file /logs/access.log 
   format transform `{ts} {request>headers>X-Forwarded-For>[0]:request>remote_ip} {request>host} {request>method} {request>uri} {status}` {
         time_format "02/Jan/2006:15:04:05"
   }
}

This image 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: deniom3/caddy-cloudflare-transform:2.8.1

About

Caddy 2 caddy-cloudflare-transform adds Cloudflare LetsEncrypt and Transform Encoder support to the base image.

Resources

Stars

Watchers

Forks

Packages