fix: reuse existing Caddy binary and preserve Caddyfile on install
Main / build (push) Waiting to run

This commit is contained in:
2026-07-07 23:47:56 +08:00
parent 906ee96282
commit a3e048b949
3 changed files with 18 additions and 6 deletions
+7 -1
View File
@@ -3,7 +3,12 @@ caddy_config() {
case $1 in
new)
mkdir -p $is_caddy_dir $is_caddy_dir/sites $is_caddy_conf
cat >$is_caddyfile <<-EOF
if [[ -f $is_caddyfile ]]; then
[[ ! $(grep -F "$is_caddy_conf/*.conf" $is_caddyfile) ]] && {
echo -e "\nimport $is_caddy_conf/*.conf" >>$is_caddyfile
}
else
cat >$is_caddyfile <<-EOF
# caddy configuration #
{
admin off
@@ -13,6 +18,7 @@ caddy_config() {
import $is_caddy_conf/*.conf
import $is_caddy_dir/sites/*.conf
EOF
fi
;;
*ws* | *http*)
cat >${is_caddy_site_file} <<<"
+9 -4
View File
@@ -1293,13 +1293,18 @@ get() {
is_host_dns=$(_wget -qO- --header="accept: application/dns-json" "https://one.one.one.one/dns-query?name=$host&type=$is_dns_type")
;;
install-caddy)
_green "\n安装 Caddy 实现自动配置 TLS.\n"
load download.sh
download caddy
if [[ -f $is_caddy_bin || $(type -P caddy) ]]; then
[[ ! -f $is_caddy_bin ]] && is_caddy_bin=$(type -P caddy)
_green "\n检测到系统已安装 Caddy (${is_caddy_bin}),将直接使用现有版本。\n"
else
_green "\n安装 Caddy 实现自动配置 TLS.\n"
load download.sh
download caddy
fi
load systemd.sh
install_service caddy &>/dev/null
is_caddy=1
_green "安装 Caddy 成功.\n"
_green "Caddy 配置成功.\n"
;;
reinstall)
is_install_sh=$(cat $is_sh_dir/install.sh)
+2 -1
View File
@@ -85,7 +85,8 @@ is_sh_dir=$is_core_dir/sh
is_sh_repo=$author/$is_core
is_pkg="wget unzip tar qrencode bash"
is_config_json=$is_core_dir/config.json
is_caddy_bin=/usr/local/bin/caddy
is_caddy_bin=$(type -P caddy)
[[ ! $is_caddy_bin ]] && is_caddy_bin=/usr/local/bin/caddy
is_caddy_dir=/etc/caddy
is_caddy_repo=caddyserver/caddy
is_caddyfile=$is_caddy_dir/Caddyfile