20-sep: watchdog Gitea (systemd) + fix monitor Kuma
This commit is contained in:
56
vps/gitea/README.md
Normal file
56
vps/gitea/README.md
Normal file
@@ -0,0 +1,56 @@
|
||||
# Gitea (VPS Contabo) — watchdog + monitor
|
||||
|
||||
## Contexto
|
||||
|
||||
- `git.v-encore-lab.com` → **185.187.169.109** (VPS Contabo).
|
||||
- Contenedor `gitea` definido en `/root/docker-compose.yml` (proyecto `root`, red `root_gitea_gitea`).
|
||||
- Datos en el bind **`/root/gitea/data`** (recrear el contenedor NO los toca).
|
||||
- Delante: `nginx-proxy-manager` (Gitea escucha en el 3000 interno, sin puerto publicado).
|
||||
|
||||
## Incidente 20-sep-2026 (502)
|
||||
|
||||
El contenedor `gitea` entró en **bucle de reinicio** (3595 reinicios) por una capa de
|
||||
escritura corrupta: `/app/gitea/gitea: Permission denied`. La imagen y la DB estaban bien.
|
||||
Se resolvió recreando el contenedor:
|
||||
|
||||
```bash
|
||||
cd /root && docker compose up -d --force-recreate --no-deps gitea
|
||||
```
|
||||
|
||||
## Watchdog (recrea el contenedor si vuelve a pasar)
|
||||
|
||||
`gitea_watchdog.sh` comprueba cada 2 min:
|
||||
1. Estado del contenedor (`docker inspect`).
|
||||
2. `docker exec gitea wget -qO- http://127.0.0.1:3000/api/healthz`.
|
||||
|
||||
Si falla **2 veces seguidas** (`MAX_FAILS=2`), recrea el contenedor con
|
||||
`docker compose up -d --force-recreate --no-deps gitea`.
|
||||
|
||||
- Log: `/var/log/gitea-watchdog.log` (rota a 1 MB).
|
||||
- Estado: `/var/lib/gitea-watchdog/fails`.
|
||||
|
||||
### Instalación (en el VPS)
|
||||
|
||||
```bash
|
||||
mkdir -p /opt/gitea-watchdog /var/lib/gitea-watchdog
|
||||
cp gitea_watchdog.sh /opt/gitea-watchdog/ && chmod +x /opt/gitea-watchdog/gitea_watchdog.sh
|
||||
cp gitea-watchdog.service gitea-watchdog.timer /etc/systemd/system/
|
||||
systemctl daemon-reload
|
||||
systemctl enable --now gitea-watchdog.timer
|
||||
```
|
||||
|
||||
Comprobar:
|
||||
|
||||
```bash
|
||||
systemctl list-timers gitea-watchdog.timer
|
||||
tail -20 /var/log/gitea-watchdog.log
|
||||
```
|
||||
|
||||
## Monitor en Uptime-Kuma
|
||||
|
||||
Monitor existente `Gitea - Repositorios` (id 1): `https://git.v-encore-lab.com`, cada 60 s,
|
||||
notificación **ALERTA MONITORES** (email SMTP). Se corrigió la URL (tenía un punto final:
|
||||
`https://git.v-encore-lab.com.`).
|
||||
|
||||
> Editar el monitor en la DB: parar `uptime-kuma`, `sqlite3 /root/uptime-kuma/kuma.db "UPDATE ..."`,
|
||||
> y volver a arrancarlo (Uptime-Kuma lee la DB al iniciar).
|
||||
Reference in New Issue
Block a user