#!/bin/bash ###################################################### ### bash <(curl -fsSL https://raw.lhy.life/caddy.sh) ###################################################### function CheckCmd() { local cmd="$1" if ! command -v "$cmd" &>/dev/null; then echo "Error: command \"$cmd\" not found." exit 1 fi } CheckCmd "curl" CheckCmd "jq" DOWNLOADLINK=$(curl -s "https://api.github.com/repos/fdxx/caddy_builder/releases/latest" | jq -r '.assets[] | select(.browser_download_url | test("linux_amd64.tar.gz")).browser_download_url') mkdir -p ~/apps/caddy && cd ~/apps/caddy wget -O caddy.tar.gz "$DOWNLOADLINK" tar -xf caddy.tar.gz chmod +x caddy ./caddy version rm -rf caddy.tar.gz cat < caddyfile { auto_https disable_redirects admin off log { level ERROR } } https://www.exp.com:4443 { respond "Hello World!" 200 tls { dns cloudflare {env.CF_Token} } } EOF cat < caddyfile.example { auto_https disable_redirects admin off log { level ERROR } } https://www.exp.com:4443 { root * /path/to/www.exp.com file_server tls { dns cloudflare {env.CF_Token} } } EOF