在Ubuntu使用Docker安装Uptime Kuma
Uptime Kuma是一款易于使用的自托管监控工具,提供了监控各种服务的可用性、通知、多语言支持、多个状态页面等功能。
本教程以Ubuntu 22.04上使用Docker安装Uptime Kuma为例。
类似步骤应该也可以用于Debian系统。
同类教程网上一大把,下面是综合多个教程和文档的总结笔记。
条件
在开始安装过程之前,确保你对Ubuntu服务器具有root或sudo访问权限。
步骤1:更新系统并安装必需软件
首先,更新系统并安装必要的软件,如git和Nginx。完成后重新启动服务器。
sudo apt update
sudo apt upgrade
sudo reboot
# 重启之后
sudo apt install nginx git
步骤2:安装Docker
在新主机上首次安装Docker Engine之前,你需要设置Docker仓库。然后,你可以从仓库安装和更新Docker。
设置仓库
更新apt软件包索引并安装允许apt使用HTTPS仓库的软件包:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
添加Docker的官方GPG密钥:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
使用以下命令设置仓库:
echo \
"deb [arch=\"$(dpkg --print-architecture)\" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
\"$(. /etc/os-release && echo \"$VERSION_CODENAME\")\" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装Docker Engine
更新apt软件包索引:
sudo apt-get update
要安装最新版本,请运行:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
步骤3:创建Docker卷目录
创建一个目录来存储你的Docker卷:
mkdir -p /docker-volume
mkdir -p /docker-volume/uptime-kuma
mkdir -p /opt/uptime-kuma
到uptime-kuma目录并创建一个docker-compose文件:
cd /opt/uptime-kuma
使用以下详细信息创建一个docker-compose.yml
文件。此配置将使用端口8001进行外部访问,并在服务器关闭或崩溃时自动重新启动服务。这里边的Docker卷将添加到之前创建的目录(/docker-volume/uptime-kuma
)。
---
# Simple docker-compose.yml
# You can change your port or volume location
version: '3.3'
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- ./uptime-kuma-data:/app/data
ports:
- 3001:3001 # <Host 端口>:<Container 端口>
restart: always
运行Docker compose创建容器:
docker-compose up -d
步骤4:配置Nginx
使用“Nginx Full” UFW应用程序配置文件允许对端口80和443(HTTP和HTTPS)的公共流量:
sudo ufw allow 80
sudo ufw allow 443
在/etc/nginx/sites-available/uptime-kuma.conf
文件中替换example.com
为你的玉米,将uptime_kuma配置添加到Nginx代理中:
sudo vi /etc/nginx/sites-available/uptime-kuma.conf
将以下配置添加到文件:
server {
listen 80;
server_name example.com; # 改成你的玉米
location / {
proxy_pass http://localhost:8001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
}
创建到sites-enabled
的链接激活站点。
然后,检查配置是否正确并重新加载Nginx以应用设置:
sudo ln -s /etc/nginx/sites-available/uptime-kuma.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
步骤5:安装Certbot
CertBot将为我们的域生成证书。
Nginx使用证书和端口443。
sudo apt install certbot python3-certbot-nginx
生成Let’s Encrypt证书并在uptime-kuma.conf
文件中修改Nginx配置:
sudo certbot --nginx -d 你的玉米
至此,你就成功搭建属于你自己的小鸡监控系统了。