一、安装 Calibre-Web
1. 切换至 root 用户
sudo -i
2. 安装依赖
apt install git imagemagick python3-pip python3-venv
3. 下载源码
cd /opt
git clone https://github.com/janeczku/calibre-web
cd calibre-web
4. 创建虚拟环境并安装依赖
python3 -m venv calibre
./calibre/bin/python3 -m pip install -r requirements.txt
5. 测试启动服务
./calibre/bin/python3 cps.py
在浏览器访问: http://localhost:8083
6. 创建专用用户并修改权限
sudo useradd --system --no-create-home --shell /bin/false calibre-web
sudo chown -R calibre-web:calibre-web /opt/calibre-web
7. 配置 Systemd 服务
编辑 /etc/systemd/system/calibre-web.service
文件并填写:
[Unit]
Description=Calibre-Web
After=network.target
[Service]
Type=simple
User=calibre-web
Group=calibre-web
WorkingDirectory=/opt/calibre-web
ExecStart=/opt/calibre-web/calibre/bin/python3 /opt/calibre-web/cps.py
Restart=always
RestartSec=10
Environment=PYTHONPATH=/opt/calibre-web
NoNewPrivileges=true
PrivateTmp=true
ProtectSystem=strict
ProtectHome=true
ReadWritePaths=/opt/calibre-web
[Install]
WantedBy=multi-user.target
8. 管理 Calibre-Web 服务
sudo systemctl daemon-reload
sudo systemctl enable calibre-web
sudo systemctl start calibre-web
常用命令:
sudo systemctl status calibre-web # 查看状态
sudo systemctl stop calibre-web # 停止服务
sudo systemctl restart calibre-web # 重启服务
sudo systemctl disable calibre-web # 取消开机自启
sudo journalctl -u calibre-web -f # 实时日志
二、安装和配置 Caddy
1. 安装 Caddy
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
2. 配置反向代理
编辑 /etc/caddy/Caddyfile
,写入:
calibre-web.com {
reverse_proxy localhost:8083
}
3. 格式化配置并检测应用 Caddy 配置
sudo caddy fmt --overwrite /etc/caddy/Caddyfile
sudo mkdir -p /var/log/caddy
sudo chown caddy:caddy /var/log/caddy
sudo caddy validate --config /etc/caddy/Caddyfile
sudo systemctl reload caddy
sudo systemctl status caddy
查看访问日志:
sudo journalctl -u caddy -f
sudo tail -f /var/log/caddy/calibre-web.log
三、验证部署结果
1. 端口监听状况
sudo netstat -tlnp | grep :443
sudo netstat -tlnp | grep :80
2. 域名解析与 HTTPS 测试
nslookup calibre-web.com
curl -I https://calibre-web.com
🎉 现在你可以通过
https://calibre-web.com
直接访问和使用你的 Calibre-Web 服务!