- Ajout scripts/ reproduisant chaque étape (secrets, render config, up CLI, init Garage, bootstrap prod, admin, vérif E2E, adoption Coolify, backup) - Templates envsubst (config.yml, garage.toml, cantaloupe.properties) + .example - deploy.conf (config non-secrète : domaine, versions, uuids Coolify) - docs/ : ARCHITECTURE, TROUBLESHOOTING (11 problèmes/fixes), RUNBOOK, SECURITY - Makefile (raccourcis) - .gitignore + retrait du suivi de .env/.secrets.env/config.yml/garage.toml (fichiers conservés sur disque ; secrets restent dans l'historique -> voir SECURITY.md) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2.6 KiB
2.6 KiB
Runbook — exploitation (day-2)
En mode Coolify, les conteneurs ont le suffixe
-tdquwauzxsq0985fk9kjqqys(cf.deploy.confCONTAINER_SUFFIX). Les helpersscripts/*.shle gèrent automatiquement viacname.
Consulter / piloter
docker ps --filter name=ark- # état
docker logs -f ark-backend-<suffix> # logs backend
docker logs -f ark-worker-<suffix> # logs worker (tâches)
# depuis Coolify : dashboard -> projet arkindex -> service arkindex (Deploy / Logs / Restart)
Redémarrer / redéployer
# CLI :
cd ~/arkindex-deploy && docker compose restart backend
# Coolify (API) :
curl -s -X POST -H "Authorization: Bearer $(cat ~/.ark_coolify_token)" \
"http://localhost:8000/api/v1/deploy?uuid=tdquwauzxsq0985fk9kjqqys"
Mettre à jour Arkindex (nouvelle version d'image)
- Vérifier la dernière finale (cf. Troubleshooting P1).
- Changer les tags dans
docker-compose.coolify.yml(backend/front) +deploy.conf. - En Coolify : mettre à jour le compose du service (UI ou API) puis redéployer.
- Toujours relancer les migrations :
docker exec ark-backend-<suffix> arkindex migrate
Shell Django / admin
docker exec -it ark-backend-<suffix> arkindex shell
docker exec -it ark-backend-<suffix> arkindex createsuperuser # (interactif)
scripts/40-create-admin.sh # (scripté, idempotent)
Recherche (Solr)
# (re)indexer un corpus après import de données
docker exec ark-backend-<suffix> arkindex reindex --corpus-id <UUID> --drop
# tout réindexer
docker exec ark-backend-<suffix> arkindex reindex --all
Stockage S3 (Garage)
G=ark-garage-<suffix>
docker exec $G /garage bucket list
docker exec $G /garage bucket info staging
docker exec $G /garage stats
Sauvegardes
scripts/99-backup-db.sh # pg_dump + inventaire buckets -> backups/
# volumes gérés par Coolify : arkindex-deploy_* (anciens, backup) et <uuid>_* (actifs)
docker volume ls | grep -E 'arkindex-deploy_|tdquwauzxsq'
Nettoyage des anciens volumes CLI (après validation Coolify)
docker volume rm arkindex-deploy_pgdata arkindex-deploy_redisdata \
arkindex-deploy_solrdata arkindex-deploy_garagedata
Santé / vérification complète
ADMIN_PASS='…' scripts/50-verify.sh
Mémoire serrée ?
- Soupape : désactiver la recherche →
features.search: nodansconfig.yml, retirer le serviceark-solr, redéployer. Solr est le plus gros consommateur (~450 Mo). - Le swap (4 Go) absorbe les pics ; surveiller
free -hetdocker stats.