1.2 KiB
Automatisches Produktions-Deployment
Der Workflow workflows/deploy-production.yml aktualisiert bei jedem Push auf
main den Git-Checkout ~/stechuhr3 auf dem Produktionsserver und startet
dort ./deploy.sh update no-backup. Dieses vorhandene Deploy-Skript kopiert
den aktualisierten Code nach /var/www/timeclock, baut das Frontend und lädt
den PM2-Prozess neu.
Einmalig im Gitea-Repository konfigurieren:
- Unter Settings → Actions → Variables:
TIMECLOCK_DEPLOY_HOST: Hostname des ProduktionsserversTIMECLOCK_DEPLOY_USER: Linux-Benutzer mit Zugriff auf den Checkout und PM2TIMECLOCK_DEPLOY_SSH_KNOWN_HOSTS: Ausgabe vonssh-keyscan -H <TIMECLOCK_DEPLOY_HOST>
- Unter Settings → Actions → Secrets:
TIMECLOCK_DEPLOY_SSH_PRIVATE_KEY: privater SSH-Schlüssel dieses Deploy-Benutzers
Der öffentliche Teil des Deploy-Schlüssels muss auf dem Produktionsserver in
~/.ssh/authorized_keys des Deploy-Benutzers hinterlegt sein. Der Gitea
Actions-Runner benötigt außerdem Netzwerkzugang per SSH zum Server.
Vor dem ersten Push muss ~/stechuhr3 bereits der Checkout dieses Repositories
sein. Das Deploy-Skript benötigt die Rechte, nach /var/www/timeclock zu
kopieren und den PM2-Prozess neu zu laden.