collabrix/SERVICE_MANAGER_README.md
DGSoft 9daab3cdf4 Add Service Manager for Background Services
- service-manager.sh: Comprehensive service management script
- Start/stop backend and frontend as background services
- Status monitoring and log management
- Individual service control (start-backend, stop-frontend, etc.)
- SERVICE_MANAGER_README.md: Complete documentation
- PID file management for process tracking
- Colored output and error handling
- Production-ready with systemd integration examples
2025-12-09 22:31:57 +01:00

3.3 KiB

Team Chat System - Service Manager

Das service-manager.sh Script ermöglicht es, Backend und Frontend als Hintergrund-Services zu starten und zu verwalten.

🚀 Schnellstart

# Starte beide Services
./service-manager.sh start

# Zeige Status
./service-manager.sh status

# Stoppe beide Services
./service-manager.sh stop

📋 Verfügbare Commands

Grundlegende Commands

  • start - Startet Backend und Frontend
  • stop - Stoppt Backend und Frontend
  • restart - Startet beide Services neu
  • status - Zeigt den aktuellen Status an

Individuelle Services

  • start-backend - Startet nur das Backend
  • start-frontend - Startet nur das Frontend
  • stop-backend - Stoppt nur das Backend
  • stop-frontend - Stoppt nur das Frontend

Logging

  • logs backend [zeilen] - Zeigt Backend-Logs (Standard: 50 Zeilen)
  • logs frontend [zeilen] - Zeigt Frontend-Logs (Standard: 50 Zeilen)

📁 Dateien und Verzeichnisse

logs/
├── backend.log     # Backend-Ausgaben
├── frontend.log    # Frontend-Ausgaben
├── backend.pid     # Backend-Prozess-ID
└── frontend.pid    # Frontend-Prozess-ID

🌐 Zugriffe

Nach dem Start sind verfügbar:

🔧 Troubleshooting

Services starten nicht

# Prüfe Logs
./service-manager.sh logs backend
./service-manager.sh logs frontend

# Prüfe Status
./service-manager.sh status

Services gewaltsam stoppen

# Einzelne Services
./service-manager.sh stop-backend
./service-manager.sh stop-frontend

# Oder alles
./service-manager.sh stop

Log-Verzeichnis aufräumen

rm -rf logs/

📊 Beispiel-Session

# System starten
$ ./service-manager.sh start
[2025-12-09 22:15:30] Starte Team Chat System...
[2025-12-09 22:15:30] Starte Backend-Server...
[2025-12-09 22:15:32] ✅ Backend gestartet (PID: 12345)
[2025-12-09 22:15:32] 📍 API: http://localhost:8000
[2025-12-09 22:15:32] 📚 Docs: http://localhost:8000/docs
[2025-12-09 22:15:32] 📄 Logs: /home/OfficeDesk/logs/backend.log
[2025-12-09 22:15:32] Starte Frontend-Server...
[2025-12-09 22:15:35] ✅ Frontend gestartet (PID: 12346)
[2025-12-09 22:15:35] 📍 App: http://192.168.0.12
[2025-12-09 22:15:35] 📄 Logs: /home/OfficeDesk/logs/frontend.log

=== Team Chat System Status ===

🟢 Backend:     Läuft (PID: 12345)
   📍 API: http://localhost:8000
   📚 Docs: http://localhost:8000/docs
🟢 Frontend:    Läuft (PID: 12346)
   📍 App: http://192.168.0.12

📁 Logs: /home/OfficeDesk/logs

🔄 Automatisches Starten

Systemd Service (empfohlen für Production)

# Service-Datei erstellen
sudo nano /etc/systemd/system/teamchat.service

# Inhalt:
[Unit]
Description=Team Chat System
After=network.target

[Service]
Type=simple
User=your_user
WorkingDirectory=/home/OfficeDesk
ExecStart=/home/OfficeDesk/service-manager.sh start
ExecStop=/home/OfficeDesk/service-manager.sh stop
Restart=always

[Install]
WantedBy=multi-user.target

# Service aktivieren und starten
sudo systemctl daemon-reload
sudo systemctl enable teamchat
sudo systemctl start teamchat

Cron-Job für automatischen Start beim Boot

# Cron-Job hinzufügen
crontab -e

# Füge hinzu:
@reboot /home/OfficeDesk/service-manager.sh start