@ -6,7 +6,8 @@ _download_caddy_file() {
echo -e " $red 获取 Caddy 下载参数失败! $none " && exit 1
echo -e " $red 获取 Caddy 下载参数失败! $none " && exit 1
fi
fi
# local caddy_download_link="https://caddyserver.com/download/linux/${caddy_arch}?license=personal"
# local caddy_download_link="https://caddyserver.com/download/linux/${caddy_arch}?license=personal"
local caddy_download_link = " https://github.com/caddyserver/caddy/releases/download/v1.0.4/caddy_v1.0.4_linux_ ${ caddy_arch } .tar.gz "
# local caddy_download_link="https://github.com/caddyserver/caddy/releases/download/v1.0.4/caddy_v1.0.4_linux_${caddy_arch}.tar.gz"
local caddy_download_link = " https://github.com/caddyserver/caddy/releases/download/v2.5.1/caddy_2.5.1_linux_ ${ caddy_arch } .tar.gz "
mkdir -p $caddy_tmp
mkdir -p $caddy_tmp
@ -27,43 +28,45 @@ _install_caddy_service() {
# setcap CAP_NET_BIND_SERVICE=+eip /usr/local/bin/caddy
# setcap CAP_NET_BIND_SERVICE=+eip /usr/local/bin/caddy
if [ [ $systemd ] ] ; then
if [ [ $systemd ] ] ; then
cp -f ${ caddy_tmp } init/linux-systemd/caddy.service /lib/systemd/system/
# cp -f ${caddy_tmp} init/linux-systemd/caddy.service /lib/systemd/system/
# if ! wget https://raw.githubusercontent.com/caddyserver/caddy/master/dist/init/linux-systemd/caddy.service -O /lib/systemd/system/caddy.service; then
# if ! wget https://raw.githubusercontent.com/caddyserver/caddy/master/dist/init/linux-systemd/caddy.service -O /lib/systemd/system/caddy.service; then
# echo -e "$red 下载 caddy.service 失败!$none" && exit 1
# echo -e "$red 下载 caddy.service 失败!$none" && exit 1
# fi
# fi
# sed -i "s/-log-timestamps=false//g" /lib/systemd/system/caddy.service
# sed -i "s/-log-timestamps=false//g" /lib/systemd/system/caddy.service
if [ [ ! $( grep "ReadWriteDirectories" /lib/systemd/system/caddy.service) ] ] ; then
# if [[ ! $(grep "ReadWriteDirectories" /lib/systemd/system/caddy.service) ]]; then
sed -i "/ReadWritePaths/a ReadWriteDirectories=/etc/ssl/caddy" /lib/systemd/system/caddy.service
# sed -i "/ReadWritePaths/a ReadWriteDirectories=/etc/ssl/caddy" /lib/systemd/system/caddy.service
fi
# fi
sed -i "s/www-data/root/g" /lib/systemd/system/caddy.service
# sed -i "s/www-data/root/g" /lib/systemd/system/caddy.service
# sed -i "/on-abnormal/a RestartSec=3" /lib/systemd/system/caddy.service
# sed -i "/on-abnormal/a RestartSec=3" /lib/systemd/system/caddy.service
# sed -i "s/on-abnormal/always/" /lib/systemd/system/caddy.service
# sed -i "s/on-abnormal/always/" /lib/systemd/system/caddy.service
#### 。。。。。 Warning.....Warning.......Warning........Warning......
#### 。。。。。 Warning.....Warning.......Warning........Warning......
#### 。。。。。 use root user run caddy...
#### 。。。。。 use root user run caddy...
# cat >/lib/systemd/system/caddy.service <<-EOF
cat >/lib/systemd/system/caddy.service <<-EOF
# [Unit]
#https://github.com/caddyserver/dist/blob/master/init/caddy.service
# Description=Caddy HTTP/2 web server
[ Unit]
# Documentation=https://caddyserver.com/docs
Description = Caddy
# After=network.target
Documentation = https://caddyserver.com/docs/
# Wants=network.target
After = network.target network-online.target
Requires = network-online.target
# [Service]
[ Service]
# Restart=always
Type = notify
# RestartSec=3
User = root
# Environment=CADDYPATH=/root/.caddy
Group = root
# ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp
ExecStart = /usr/local/bin/caddy run --environ --config /etc/caddy/Caddyfile
# ExecReload=/bin/kill -USR1 $MAINPID
ExecReload = /usr/local/bin/caddy reload --config /etc/caddy/Caddyfile
# KillMode=mixed
TimeoutStopSec = 5s
# KillSignal=SIGQUIT
LimitNOFILE = 1048576
# TimeoutStopSec=5s
LimitNPROC = 512
# LimitNOFILE=1048576
PrivateTmp = true
# LimitNPROC=512
ProtectSystem = full
#AmbientCapabilities=CAP_NET_BIND_SERVICE
# [Install ]
[ Install]
# WantedBy=multi-user.target
WantedBy = multi-user.target
# EOF
EOF
systemctl enable caddy
systemctl enable caddy
else
else
cp -f ${ caddy_tmp } init/linux-sysvinit/caddy /etc/init.d/caddy
cp -f ${ caddy_tmp } init/linux-sysvinit/caddy /etc/init.d/caddy