การเข้าถึง Gatus
- เปิด browser และไปที่:
https://<SERVER_IP> - คาดว่าจะมีคำเตือน SSL ของ browser (self-signed certificate)
- ต้องมีการยืนยันตัวตน (Basic Auth popup)
- วิธียืนยันตัวตน: HTTP Basic Auth
- ข้อมูล credentials ถูกเก็บอย่างปลอดภัยใน:
/root/.cloudzy-creds
ไฟล์และไดเรกทอรีที่สำคัญ
- ไดเรกทอรีติดตั้ง:
/opt/gatus - Docker Compose:
/opt/gatus/docker-compose.yml - ไฟล์ environment:
/opt/gatus/.env - ไดเรกทอรี่การตั้งค่า:
/opt/gatus/config/ - ไฟล์ config หลัก:
/opt/gatus/config/config.yaml - ไดเรกทอรี่ฐานข้อมูล:
/opt/gatus/data/db - Nginx config:
/etc/nginx/sites-available/gatus.conf - Nginx site ที่เปิดใช้งานอยู่:
/etc/nginx/sites-enabled/gatus.conf - SSL certificates:
/etc/nginx/ssl/ - ไฟล์ Basic Auth ของ HTTP:
/etc/nginx/auth/.gatus-htpasswd - ไฟล์ข้อมูลประจำตัว:
/root/.gatus-credentials
พฤติกรรมของการตั้งค่า
- ไฟล์การตั้งค่าอยู่ใน
/opt/gatus/config/ - YAML สามารถแบ่งออกเป็นหลายไฟล์ได้
- การเปลี่ยนแปลงจะโหลดใหม่โดยอัตโนมัติ
- ไม่ต้องรีสตาร์ทหลังจากแก้ไข
จัดการ Stack
Go ไปยังไดเรกทอรีติดตั้ง:
cd /opt/gatus
คำสั่ง Docker Compose ที่ใช้บ่อย:
# Check status
docker compose ps
# View logs (follow live)
docker compose logs -f
# Restart all services
docker compose restart
# Stop services
docker compose down
# Start again
docker compose up -d
ปิดใช้งาน HTTP Basic Auth ใน Nginx (ไม่บังคับ)
แก้ไขไฟล์ไซต์ Nginx: /etc/nginx/sites-available/gatus.conf
ลบหรือคอมเมนต์บรรทัดเหล่านี้:
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/auth/.gatus-htpasswd;
รีโหลด Nginx:
systemctl restart nginx
เปิดใช้งาน SSL กับโดเมน
1. ชี้โดเมนของคุณไปยัง IP ของ server
2. แก้ไข config ของ Nginx และเปลี่ยนทั้งคู่ server_name <IP>; กับโดเมนของคุณ (<your-domain>) สำหรับทั้ง HTTP (port 80) และ HTTPS (port 443) blocks:
vim /etc/nginx/sites-available/gatus.conf
3. ติดตั้ง Certbot:
apt install -y certbot python3-certbot-nginx
4. รันคำสั่งต่อไปนี้เพื่อสร้าง Let’s Encrypt certificate ที่ใช้ได้:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
5. แทนที่ SSL paths ใน Nginx config:
vim /etc/nginx/sites-available/gatus.conf
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
6. รีสตาร์ท Nginx เพื่อใช้การเปลี่ยนแปลง:
systemctl restart nginx
7. เปิด browser และไปที่: https://yourdomain.com