Files
IT-Docs/基于Debian12的Uptime Kuma部署与配置.md

4.0 KiB
Raw Permalink Blame History

基于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 域名的映射:

stream {
    map $ssl_preread_server_name $backend {
        #... 你现有的其他域名映射 ...
        kuma.你的域名    127.0.0.1:8444;  #新增,将 Kuma 域名指向新端口
    }
    #... 其他配置 ...
}

步骤 3.2:为 Kuma 添加 Nginx 站点配置并申请 SSL 证书 如果你已拥有泛域名证书可直接复用。新建配置文件 /etc/nginx/sites-enabled/kuma

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 命令重新创建容器