alpinux-owni/services/static-cdn.service
Cédrix 89cc919906 Absorber alpinux-infra : un seul dépôt pour la machine
Il y avait deux dépôts d'infrastructure et aucune frontière entre eux. La
seule distinction défendable — « documentation » d'un côté, « fichiers de
configuration » de l'autre — ne tenait plus : infra avait fini par contenir
plus de documentation qu'owni, pendant qu'owni décrivait du concret (IP,
bases, comptes).

Tout vient donc ici : conf/ (vhosts de référence), dns/ (export de zone),
services/ (units systemd), scripts/ (sauvegarde) et docs/ (courrier sortant,
certificats, sauvegardes, et le déploiement par service).

Dans ce sens plutôt que l'inverse parce qu'« owni » nomme la machine, là où
« infra » ne dit pas de quoi il s'agit — et c'est le nom que Cédric emploie
spontanément, y compris pour le dossier de secrets.

Les renvois croisés entre les deux dépôts deviennent des liens internes : un
lien vers un dépôt qu'on s'apprête à archiver aurait pourri en silence.

Reste une incohérence, signalée plutôt que corrigée à la hâte :
docs/admin.md, static.md, wiki.md, dynamic.md et proxy-calendar.md décrivent
le déploiement de sites, pas la machine. Ils ont la même place ici que celle
que la messagerie n'avait pas — ils devraient rejoindre leurs dépôts.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFbwnJurBwTs7x7t93ecku
2026-09-27 12:55:45 +02:00

27 lines
741 B
Desktop File

# Systemd unit pour l'app Flask static.alpinux.org (tableau de bord CDN)
# Déployé via : static/scripts/deploy-app.sh
# Opérations manuelles :
# sudo systemctl enable --now static-cdn
# sudo systemctl restart static-cdn
[Unit]
Description=Alpinux Static CDN — Tableau de bord (Flask + Gunicorn)
After=network.target
[Service]
User=static-cdn
Group=static-cdn
WorkingDirectory=/opt/static-cdn
EnvironmentFile=/opt/static-cdn/.env
ExecStart=/opt/static-cdn/venv/bin/gunicorn \
--workers 2 \
--timeout 120 \
--bind 127.0.0.1:5003 \
--access-logfile /var/log/static-cdn/access.log \
--error-logfile /var/log/static-cdn/error.log \
app:app
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target