Files
singlechat/README-DEPLOYMENT.md
Torsten Schulz (local) 10e6e7a80a
All checks were successful
Deploy SingleChat / deploy (push) Successful in 27s
videochat integriert
2026-06-17 12:53:03 +02:00

2.2 KiB

Deployment-Anleitung für ypchat.net

Voraussetzungen

  • Die Anwendung muss nach /opt/ypchat kopiert werden
  • Node.js muss installiert sein
  • Apache muss konfiguriert sein

Schritte

1. Anwendung nach /opt/ypchat kopieren

# Als root oder mit sudo
sudo mkdir -p /opt/ypchat
sudo cp -r /home/torsten/Programs/YpChat/* /opt/ypchat/
sudo chown -R www-data:www-data /opt/ypchat

2. Installation durchführen

cd /opt/ypchat
sudo -u www-data ./install.sh

3. Service installieren

cd /opt/ypchat
sudo ./install-service-ypchat.sh

4. Alten Service stoppen

sudo systemctl stop ypchat
sudo systemctl disable ypchat  # Optional: Alten Service deaktivieren

5. Neuen Service starten

sudo systemctl start ypchat
sudo systemctl status ypchat

6. Logs prüfen

sudo journalctl -u ypchat -f

Troubleshooting

Auto-Rollout mit Gitea

Der Workflow .gitea/workflows/deploy.yml startet bei Push auf main per SSH das Server-Skript /usr/local/bin/actualize-singlechat.sh. Das Skript wird vom Workflow vor dem Start nach /usr/local/bin installiert.

Gitea-Konfiguration:

  • Variables: SSH_HOST, SSH_PORT, SSH_USER
  • Secret: PROD_SSH_KEY_B64 mit dem base64-kodierten privaten Deploy-Key

Server-Skript manuell testen:

sudo install -m 755 scripts/actualize-singlechat.sh /usr/local/bin/actualize-singlechat.sh

Das Skript aktualisiert /opt/ypchat, baut den Client neu und startet ypchat per systemd neu.

Service startet nicht

# Prüfe Logs
sudo journalctl -u ypchat -n 50

# Prüfe ob Node.js verfügbar ist
which node
/usr/bin/node --version

# Prüfe ob .env existiert
ls -la /opt/ypchat/.env
cat /opt/ypchat/.env

Alte Seite wird noch angezeigt

  1. Prüfe ob der neue Service läuft: sudo systemctl status ypchat
  2. Prüfe ob Port 4000 belegt ist: sudo lsof -i :4000
  3. Prüfe Apache-Logs: sudo tail -f /var/log/apache2/error.log
  4. Apache neu laden: sudo systemctl reload apache2

Gebaute Dateien fehlen

# Prüfe ob dist existiert
ls -la /opt/ypchat/docroot/dist

# Falls nicht, baue neu:
cd /opt/ypchat
sudo -u www-data npm run build
sudo -u www-data cp -r client/dist docroot/