#!/usr/bin/env bash # Copyright (c) 2021-2026 tteck # Author: tteck (tteckster) | Co-Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://caddyserver.com/ | Github: https://github.com/caddyserver/caddy source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors setting_up_container network_check update_os setup_deb_based() { fetch_and_deploy_gh_release "caddy" "caddyserver/caddy" "binary" "latest" "/opt/caddy" "caddy_*_linux_$(arch_resolve).deb" systemctl enable -q --now caddy prompt="${var_caddy_xcaddy:-}" [[ -n "$prompt" ]] || read -r -p "${TAB3}Would you like to install xCaddy Addon? " prompt if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then setup_go fetch_and_deploy_gh_release "xcaddy" "caddyserver/xcaddy" "binary" msg_info "Setup xCaddy" $STD apt install -y git $STD xcaddy build msg_ok "Setup xCaddy" fi } setup_alpine() { msg_info "Installing Caddy" $STD apk add --no-cache caddy caddy-openrc cat </etc/caddy/Caddyfile :80 { # Set this path to your site's directory. root * /var/www/html # Enable the static file server. file_server # Another common task is to set up a reverse proxy: # reverse_proxy localhost:8080 # Or serve a PHP site through php-fpm: # php_fastcgi localhost:9000 } EOF mkdir -p /var/www/html cat </var/www/html/index.html Caddy works!

Hello Caddy!

For more information, refer to the Caddy documentation

EOF msg_ok "Installed Caddy" prompt="${var_caddy_xcaddy:-}" [[ -n "$prompt" ]] || read -r -p "${TAB3}Would you like to install xCaddy Addon? " prompt if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then GO_VERSION="$(curl -fsSL https://go.dev/VERSION?m=text | head -1 | cut -c3-)" setup_go fetch_and_deploy_gh_release "xcaddy" "caddyserver/xcaddy" "prebuild" "latest" "/opt/xcaddy" "xcaddy_*_linux_$(arch_resolve).tar.gz" ln -sf /opt/xcaddy/xcaddy /usr/local/bin/xcaddy msg_info "Setup xCaddy" cd /opt $STD xcaddy build msg_ok "Setup xCaddy" fi msg_info "Enabling Caddy Service" $STD rc-update add caddy default msg_ok "Enabled Caddy Service" msg_info "Starting Caddy" $STD service caddy start msg_ok "Started Caddy" } run_os_setup motd_ssh customize cleanup_lxc