4.0 KiB
Executable File
📦 MYP - Manage your Printer
MYP (Manage your Printer) ist eine Plattform zur Reservierung von 3D-Druckern, die für die TBA im Werk 040, Berlin-Marienfelde, entwickelt wurde.
Frontend: https://git.i.mercedes-benz.com/TBA-Berlin-FI/MYP/tree/main/frontend
⚠️ MYP ist zzt. in Entwicklung
‼ Datenbank aus Blueprint steht im Konflikt zu MYP.sql - Integration muss besprochen werden
💡 Vorschlag wenn machbar @Torben: Aufteilung der Datenbanken? API ist ja nur für Drucker zuständig; WebInterface für Authentifizierung, Sessions etc.
UltiMaker HTTP API: https://support.makerbot.com/s/article/1667412427787
Datenbankstruktur
(MYP.sql - Gerät: Reservation Pi)
Printer
- Speichert Informationen zu Druckern.
- Beinhaltet Details wie Namen, Beschreibung und Betriebsstatus.
- Verknüpft mit Druckaufträgen.
PrintJob
- Enthält alle Druckaufträge.
- Jeder Auftrag ist einem Drucker und einem Benutzer zugeordnet.
- Speichert Startzeit, Dauer und Kommentare zu den Aufträgen.
- Erfassung, ob ein Auftrag abgebrochen wurde und die dazugehörige Begründung.
Account
- Verwaltet Benutzerkonten.
- Speichert Authentifizierungsdetails wie Tokens und deren Ablaufzeiten.
Session
- Erfasst Session-Daten.
- Beinhaltet eindeutige Session-Tokens und Ablaufdaten.
User
- Speichert Benutzerinformationen.
- Verknüpft mit Druckaufträgen, Accounts und Sessions.
Fremdschlüsselbeziehungen
User
ist verknüpft mitPrintJob
,Account
undSession
über Benutzer-ID.Printer
ist verknüpft mitPrintJob
über die Drucker-ID.
Installation und Start
Windows
- Stellen Sie sicher, dass Docker Desktop installiert und gestartet ist.
- Öffnen Sie PowerShell und navigieren Sie zum Projektverzeichnis.
- Führen Sie das Start-Skript aus:
.\start.ps1
Linux/Mac
- Stellen Sie sicher, dass Docker installiert und gestartet ist.
- Öffnen Sie ein Terminal und navigieren Sie zum Projektverzeichnis.
- Machen Sie die Skripte ausführbar:
chmod +x start.sh cleanup.sh
- Führen Sie das Start-Skript aus:
./start.sh
Bereinigung der Umgebung
Um eine vollständige Bereinigung aller Container, Images und Volumes durchzuführen, können Sie folgende Skripte verwenden:
Windows
.\cleanup.ps1
Linux/Mac
./cleanup.sh
Die Bereinigung kann auch während des Starts der Anwendung durchgeführt werden, wenn alte Container erkannt werden.
Backend-Interface
Das Backend-Interface ist unter folgenden URLs erreichbar:
- Produktionsumgebung: http://localhost:5000
- Debug-Server: http://localhost:5555
Frontend-Interface
Das Frontend-Interface ist unter folgenden URLs erreichbar:
- Produktionsumgebung: http://localhost:80 oder https://localhost:443
- Debug-Server: http://localhost:8081
SSH-Server
Die Start-Skripte sorgen automatisch dafür, dass ein SSH-Server installiert, aktiviert und gestartet wird:
- Unter Linux: Verwendet systemd, um den OpenSSH-Server zu aktivieren und zu starten
- Unter Windows: Installiert und konfiguriert den Windows OpenSSH-Server
Der SSH-Server wird so konfiguriert, dass er automatisch beim Systemstart aktiviert wird, um einen Fernzugriff auf das System zu ermöglichen. Auf Windows-Systemen wird auch eine entsprechende Firewall-Regel erstellt.
Manuelles Einrichten des SSH-Servers
Falls die automatische Installation fehlschlägt:
Linux (Debian/Ubuntu)
sudo apt-get update
sudo apt-get install openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
Windows 10/11
- Öffnen Sie "Einstellungen" > "Apps" > "Optionale Features"
- Klicken Sie auf "Feature hinzufügen" und wählen Sie "OpenSSH Server"
- Nach der Installation öffnen Sie PowerShell als Administrator und führen Sie folgende Befehle aus:
Set-Service -Name sshd -StartupType Automatic
Start-Service sshd
New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (TCP-In)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22