- Klone das Projekt
git clone https://github.com/Viktoriaschule/Server.git - Kopiere die
config.example.jsonDatei und benenne sieconfig.json - Ersetzte alle Platzhalter in der
config.jsonDatei durch die richtigen Werte - Lade den privaten Firebase Schlüssel herunter
- Firebaseprojekt -> Einstellungen (oben links) -> Dienstkonten -> Neuen privaten Schlüssel generieren
- Bennene die Datei
firebase.jsonund verschiebe sie ins Hauptverzeichnis des Servers
- Speichere den Stundenplanexport (
Schuldatentransfer UNSTF) unterunstf.txt(SollteISO-8859bleiben und nicht nachUTF-8konvertiert werden) - Falls
yarnnoch nicht installiert ist, installiere es jetzt - Installiere alle Packages:
yarn install - Starte den Server
yarn start, oder ein bestimmtes Modul:yarn MODUL- Alle Module sind in der
package.jsonDatei zu finden
- Alle Module sind in der
- Alles aus dem Abschnitt Konfiguration
- Webservice auf den in der
config.jsonfestgelegten Port configurieren - Damit der Server automatisch gestartet wird, aber auch jederzeit gestoppt und neugestartet werden kann, wird ein Service erstellt:
- Erstelle die Datei
/etc/systemd/system/viktoriaapp.servicemit folgendem InhaltDie Zeilen[Unit] Description=ViktoriaApp api service After=mysqld.service Requires=mysqld.service StartLimitIntervalSec=0 [Service] Type=simple Restart=always RestartSec=1 User=USERNAME_FOR_THIS_SERVICE WorkingDirectory=DIRECTORY_TO_SERVER_FOLDER ExecStart=/usr/local/bin/yarn start [Install] WantedBy=multi-user.targetwerden nur gebraucht wenn auf dem selben Server auch die Datenbank läuft, wenn dies nicht der Fall ist, müssen diese durchAfter=mysqld.service Requires=mysqld.serviceersetzt werden, da nicht mehr auf eine Datenbank, sondern nur aufs Netzwerk gewartet werden mussAfter=network.target - Aktiviere den Service mit
sudo systemctl enable viktoriaapp.service - Und starte ihn anschließend mit
sudo service start - Zum neustarten einfach
sudo service restartausführen - Für die Logs kann
sudo journalctl -r -u viktoriaappausgeführt werden, oder wenn live neue Logs angezeigt werden das-rdurch ein-fersetzten
- Erstelle die Datei
- Um Benachrichtigungen für Entwickler zu erzwingen, benutze das
--devAttribut - Um eigene Daten zu laden, gucke auf den simulation server