Migration LeTTo zu Docker: Unterschied zwischen den Versionen

Aus Letto-Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 53: Zeile 53:


=== Anlegen der Schule ===
=== Anlegen der Schule ===
[[Datei:Setup_schule_hinzufuegen.png|400px|thumb]]
* Im Setup-Service durch "Schule hinzufügen" erreicht man den Konfigurationsdialog für den Schulimport/Neuanlage
* Im Setup-Service durch "Schule hinzufügen" erreicht man den Konfigurationsdialog für den Schulimport/Neuanlage
[[Datei:Setup_schule_hinzufuegen.png|400px|thumb]]
==== Dialog ====
==== Dialog ====
[[Datei:Setup neue schule.png|1000px|thumb]]
[[Datei:Setup neue schule.png|1000px|thumb]]

Version vom 30. Oktober 2022, 21:56 Uhr

Migration einer bestehenden LeTTo-Installation auf eine Docker-Installation

siehe auch

Migration einer Linux-basierten LeTTo-Installation direkt auf den bestehenden Server

Besteht bereits eine lokale Installation auf einem Linux Server (idealerweise Ubuntu 18.04,20.04,22.04 oder Debian 11) dann kann direkt auf diesem Server eine dockerbasierte Installation vorgenommen und dabei die bestehenden Daten übernommen werden.

Als root-Benutzer am Server auf dem LeTTo im Verzeichnise /opt/letto installiert ist

  • Firewall so konfigurieren, dass der Port 9096 des Servers von dem PC erreichbar ist, von dem aus das Setup eingerichtet werden soll.
  • Update aller Packete
apt-get update -y
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get autoremove -y
  • Stop des LeTTo-Servers
/opt/letto/stop.sh
  • MySQL-Dump der Datenbank erstellen
mysqldump --user=letto --password=dasPasswortDesLeTToBenutzers -h 127.0.0.1 letto >letto.sql
  • Stop des apache2-Webservers
service apache2 stop
wget http://letto.at/download/letto/install-letto-ubuntu-docker.sh
  • Start des Installationsscripts - Zu Beginn wird nach dem Passwort des administrativen Benutzers admin gefragt. Ist kein Benutzer letto am System angelegt, so wird dieser mit dem gleichen Passwort angelegt.
bash ./install-letto-ubuntu-docker.sh

Schul-Kürzel definieren

  • Nun sollte man sich ein Kürzel für die Schule überlegen. Diese Kürzel wird im Filsystem und in der URL für die Identifikation der Schule verwendet. Das Schulkürzel darf nur aus Kleinbuchstaben und Zahlen bestehen und sollte mindestens 3 Zeichen lang sein. Im weiteren Verlauf wird das Kürzel school verwendet. Ein einmal definiertes Kürzel kann nicht mehr geändert werden, ausser durch ein Verschieben der Schule auf eine neue Installation bei der die Lizenzinformation verloren geht.

Datenbank-Dump ins database-dump Verzeichnis kopieren

 cp letto.sql /opt/letto/docker/storage/database-dump/letto_school.sql

Verschieben der LeTTo-Daten aus der lokalen Installation in das Docker-Storage Verzeichnis

  • images Verzeichnis löschen/verschieben in Sicherungverzeichnis (kann nach erfolgreicher Installation glöscht werden)
 mv /opt/letto/docker/storage/images /opt/letto/docker/storage/imagesold
  • Verschieben der Bilder in den Docker-Storage
 mv /opt/letto/images /opt/letto/docker/storage/images
 mv /opt/letto/docker/storage/images/photos /opt/letto/docker/storage/photos/school
 mv /opt/letto/docker/storage/images/plugins /opt/letto/docker/storage/plugins/school
 mv /opt/letto/projekt /opt/letto/docker/storage/projekte/school
  • Verlinken der Bilder wenn man die alte LeTTo-Installation parallel weiterbetreiben möchte (Nur sinnvoll, wenn dort die gleiche Revision von LeTTo läuft)
 ln -s /opt/letto/docker/storage/images /opt/letto
 ln -s /opt/letto/docker/storage/photos/school /opt/letto/images/photos
 ln -s /opt/letto/docker/storage/plugins/school /opt/letto/images/plugins
 ln -s /opt/letto/docker/storage/projekte/school /opt/letto/projekt
  • Anpassen der Environment-Variablen für den bestehenden alten TomEE-Server wenn man die alte LeTTo-Installation parallel weiterbetreiben möchte. In der Datei /opt/tomee/bin/setenv.sh hinzufügen von:
 export letto_pathImagesPhotos=/opt/letto/docker/storage/photos/school
 export letto_webPathImagesPhotos=/images/photos/school
 export letto_pathImagesPlugins=/opt/letto/docker/storage/plugins/school
 export letto_webPathImagesPlugins=/images/plugins/school
 export letto_pathProjekte=/opt/letto/docker/storage/projekte/school
 export letto_pathProjektAbgaben=/opt/letto/docker/storage/projekte/school
 export letto_webPathProjekte=/projekte/school

weitere Konfiguration im Setup Service

Nach der Installation ist das Setup-Service über einen Browser auf dem https-Port 9096 erreichbar. Für die Ersteinrichtung müssen beim ersten Start einige Informationen angegeben werden.

Anlegen der Schule

  • Im Setup-Service durch "Schule hinzufügen" erreicht man den Konfigurationsdialog für den Schulimport/Neuanlage

Dialog

  • Jede Schule von der ein Datenbankdump im Verzeichnis /opt/letto/docker/storage/database-dump existiert erscheint hier als Button bei den Database-Dumpfiles. Durch einen Klick auf den Butteon wird das Dumpfile in das Feld "Importiere Datenbank" eingetragen und das Schulkürzel welches im Dateinamen nach letto_ folgt wird bei der Kurzbezeichnung eingetragen.
  • Kurzbezeichnung: Achten sie darauf, dass die Kurzbezeichnung nachträglich nicht mehr geändert werden kann!
  • Die Bezeichnung der Schule wird in der Lizenzdatei eingetragen. Wird die Bezeichnung später geändert, muss auch eine neue Lizenz ausgestellt werden.
  • Der Datebankname für die Schuldatenbank kann hier gesetzt werden. Im Normalfall wird das Feld leer gelassen damit die Standard-Datenbank letto_school verwendet wird
  • Das MySQL-Benutzer für die Datenbank der Schule ist im Normalfall letto.
  • Das MySQL-Benutzer-Passwort für die Datenbank der Schule mit dem zuvor angegebenen Benutzer. Vorsicht bei Multischulumgebungen, wird hier der gleiche Benutzername und der gleiche MySQL-Server verwendet, dann muss das Passwort bei allen verwendeten Schule gleich sein!!
  • Info über die Schule: Information über die Schule für den Lizenzserver
  • Loginname des globalen Administrators: Wird hier kein Benutzer angegeben, so wird ein Benutzer "adminglobalschool" angelegt wenn ein Passwort dafür definiert wird.
  • Passwort des globalen Administrators
  • Loginname des Schuladministrators: Wird hier kein Benutzer angegeben, so wird ein Benutzer "adminschool" angelegt wenn ein Passwort dafür definiert wird.
  • Passwort des Schuladministrators
  • Lizenzcode und alle restlichen Einträge werden direkt aus dem SQL-Dump übernommen, können deshalb freigelassen werden. Wird trotzdem etwas eingetragen, so gilt natürlich dieser Eintrag nach dem Import der Daten.
  • Der Button "hinzufügen" legt die Schule an und spielt die Daten ein. Danach ist die Schule sofort verwendbar.

Migration einer bestehenden LeTTo-Installation auf einen neuen Linux-Server als Docker-Installation

Liegt eine LeTTo-Installation auf einem beliebigen System vor, so kann sie wie hier beschrieben in eine Docker-Installation auf einem Linux-Server übertragen werden.

Migration einer bestehenden LeTTo-Installation auf einen neuen Windows-Server als Docker-Installation

Doku noch nicht realisiert. Bitte entsprechend der Linux-Installation an das System anpassen.

Migration einer bestehenden LeTTo-Installation auf einen neuen MAC-Server als Docker-Installation

Doku noch nicht realisiert. Bitte entsprechend der Linux-Installation an das System anpassen.