Runbook OnlyOffice + Adminer¶
Lo stack OnlyOffice (Document Server + microservizio) convive con Adminer/MariaDB; questo runbook raccoglie i passi per un riavvio controllato e un eventuale monitoraggio automatizzato.
1. Riavvio manuale¶
- Posizionati nella root del progetto e lancia:
cd /home/safeops/safeops make onlyoffice-adminer-restart - Il target usa
docker compose -f docker-compose.adminer.yml -f docker-compose.onlyoffice.yml downseguito daup -d. Riavvia in sequenzamysqlsuper,adminer,safeops-onlyofficeesafeops-onlyoffice-service. - Dopo il restart, conferma lo stato con:
docker compose -f docker-compose.onlyoffice.yml ps docker compose -f docker-compose.adminer.yml ps - Se avvii questa operazione da GUI, puoi affiancare un rapido screenshot (es.
runbook-assets/onlyoffice-restart.png) per mostrare il risultato delmake.
2. Monitoraggio e integrazione cron¶
- Un cron/thread systemd può eseguire il comando ogni notte o a intervalli ridotti per garantire rollback rapidi. Ecco un semplice cron entry (modifica
/etc/crontab):30 3 * * * safeops cd /home/safeops/safeops && /usr/bin/make onlyoffice-adminer-restart >> /var/log/safeops/onlyoffice-restart.log 2>&1 - Al posto del cron puoi creare un listener che verifica
curl http://10.50.0.200:9082/healthchecke, se fallisce, esegue lo stessomake. Ti basta uno script shell o systemd timer che cattura l’output e invia alert in caso di fallimento. - Dopo ogni intervento, segna data/ora e log file a cui hai scritto (es.
onlyoffice-restart.log). Questo aiuta a capire se i restart automatici resettano la pipeline o se serve un intervento manuale.
3. Verifica e debug¶
- Dopo il riavvio, vai su
http://10.50.0.200:8090per Adminer e conferma chemysqlsuperè raggiungibile; se usi socket, il target monta/opt/mysql/mysql.sock. - Controlla i log
journalctl -u safeops-web.serviceedocker compose -f docker-compose.onlyoffice.yml logs onlyoffice-serviceper garantire che il microservizio riesca a comunicare con il MinIO condiviso. - Se emergono errori 400/500 su
/onlyoffice/editoro/onlyoffice/create, salva il log e aggiornalo nel runbook (per esempio apri un issue o aggiungi una sezione “Incidenti” con il timestamp e la risoluzione adottata).