Mainly CLI commands for maintenance and upkeep.

Basics

Reload configuration

bash-session
>sudo systemctl reload caddy

Debug crash

bash-session
>sudo systemctl info caddy

Get logs

bash-session
>ls /var/log/caddy
>echo "get {file}.log of interest"
>tail /var/log/caddy/file.log
>goaccess /var/log/caddy/file.log

Advanced

Custom build with XCADDY

Build with Go 1.26:

bash-session
>mkdir -p /tmp/go126 
# for go 1.26.4
>ln -sf "$HOME/go/bin/go1.26.4" /tmp/go126/go   
>export PATH="/tmp/go126:$PATH:"
>xcaddy build v2.11.4 --with github.com/lucaslorentz/caddy-docker-proxy/v2  \ 
    --with github.com/caddy-dns/cloudflare  \
    --with github.com/caddy-dns/duckdns

Copy to server if not built directly.

Substitute binary:

bash-session
>which caddy
/usr/bin/caddy
>sudo cp /usr/bin/caddy caddy.bck
>sudo systemctl stop caddy
>sudo mv caddy /usr/bin/caddy
>sudo systemctl restart caddy