# 基于Debian12的Uptime Kuma部署与配置 本文讲述Debian12环境下进行Kuma部署和配置,包括Docker 安装、Kuma 部署、HTTPS 域名配置。 ## 1. 安装 Docker (Debian 12) #更新系统并安装依赖 sudo apt update && sudo apt upgrade -y sudo apt install -y ca-certificates curl gnupg lsb-release #添加 Docker 官方 GPG 密钥和软件源 curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null #安装 Docker Engine sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin #启动 Docker 并设置开机自启 sudo systemctl start docker sudo systemctl enable docker #将当前用户加入 docker 组,避免每次输入 sudo sudo usermod -aG docker $USER #重要:执行完毕后,需要退出 SSH 重新登录才能使权限生效 ## 2. 部署 Uptime Kuma 容器 #创建数据持久化目录 mkdir -p /opt/uptime-kuma-data #运行 Kuma 容器 (使用 host 网络模式,简化后续代理配置) docker run -d --restart=always \ --network host \ -v /opt/uptime-kuma-data:/app/data \ --name uptime-kuma \ louislam/uptime-kuma:2 • 访问地址:http://你的IP:3001 • 首次访问:设置管理员邮箱和密码。 • 注意:使用 --network host 模式后,-p 参数失效,容器直接使用宿主机的 3001 端口。 ## 3. 配置 HTTPS 访问 你的现有架构为:Nginx Stream (SNI分流) -> 后端 Nginx (HTTPs) -> 服务。Kuma 作为新服务,通过独立端口 8444 接入。 步骤 3.1:修改 Stream 分流配置 编辑 Nginx 主配置文件(例如 /etc/nginx/nginx.conf),在 stream 块的 map 中添加 Kuma 域名的映射: ```nginx stream { map $ssl_preread_server_name $backend { #... 你现有的其他域名映射 ... kuma.你的域名 127.0.0.1:8444; #新增,将 Kuma 域名指向新端口 } #... 其他配置 ... } ``` 步骤 3.2:为 Kuma 添加 Nginx 站点配置并申请 SSL 证书 如果你已拥有泛域名证书可直接复用。新建配置文件 /etc/nginx/sites-enabled/kuma: ```nginx server { listen 127.0.0.1:8444 ssl http2; server_name kuma.你的域名; #复用已有的泛域名证书路径 ssl_certificate /etc/letsencrypt/live/你的域名/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/你的域名/privkey.pem; location / { proxy_pass http://127.0.0.1:3001; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } ``` 步骤 3.3:测试并重载 Nginx nginx -t && systemctl reload nginx 最终访问地址:https://kuma.你的域名 后续设置:登录 Kuma 后台,进入 设置 → 反向代理,将 信任代理 设为 是。 ## 4. 配置Kuma 手机端:安装 Bark App,注册后复制你的专属 URL (例如 https://api.day.app/你的Key/)。 Kuma 管理端: 进入 设置 → 通知。 添加通知,类型选择 Bark (API v2)。 Bark 接入点:填入你的 URL 并在末尾加上 /push (格式:https://api.day.app/你的Key/push)。 Bark 群组:填入英文标识,如 homemonitor。 点击 测试,手机应收到推送。保存。 配置完成后,任一方 Kuma 服务中断,你的手机都会立即收到告警。 ## 5. 常用管理命令 #查看 Kuma 容器状态 docker ps -a --filter name=uptime-kuma #重启 Kuma 容器 docker restart uptime-kuma #查看 Kuma 实时日志 docker logs -f uptime-kuma #升级 Kuma docker stop uptime-kuma docker rm uptime-kuma docker pull louislam/uptime-kuma:2 #之后使用相同的 docker run 命令重新创建容器