Closed fb4thxUall closed 2 months ago
Wow, ja, viel besser! Soll ich das direkt einfügen, oder willst Du das selbst versuchen via fork und pull request? Letzteres hätte den Vorteil, dass die eigene ID als contribution auftaucht in der open source Welt 🧞♂️ . Alternativ kann ich es auch ändern.
Moin,
das ist lieb aber da ich es selbst alles zusammenkopiert habe, lege ich keinen Wert auf Credits. Da du es aber grundsätzlich gut findest, werde ich eine etwas ausformuliertere Version davon erstellen und auch die Standbox-Variante noch rtwas verbessern und auch besser in die Erklärung einbinden. Ich mach das im Verlauf der Woche und dann kannst du es einbauen.
Liebe Grüße
Am 13. August 2024 22:59:52 MESZ schrieb Jure Zakotnik @.***>:
Wow, ja, viel besser! Soll ich das direkt einfügen, oder willst Du das selbst versuchen via fork und pull request? Letzteres hätte den Vorteil, dass die eigene ID als contribution auftaucht in der open source Welt 🧞♂️ . Alternativ kann ich es auch ändern.
-- Reply to this email directly or view it on GitHub: https://github.com/jzakotnik/openlibry/issues/130#issuecomment-2287128486 You are receiving this because you authored the thread.
Message ID: @.***> -- Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
@fb4thxUall Danke für die Mitarbeit, habe das Gefühl mit jeder Iteration wird's bischen besser 😎
So, hier mein Vorschlag für eine Aktualisierung der Installationsanleitung bzw. die Docker-Teile davon. Bitte aber nochmal überlesen und Fehler natürlich bitte nicht übernehmen :-).:
Erledige zunächst folgende Vorarbeiten:
Update der Distribution: sudo apt-get update
und sudo apt-get upgrade
Falls curl nicht installiert ist: sudo apt install curl
Installiere den node version manager NVM: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
Installiere den node server: nvm install --lts
Falls noch kein git installiert ist: sudo apt-get install git-all
Installiere, falls noch nicht vorhanden, Docker an sich:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo usermod -aG docker ${USER}
sudo systemctl is-active docker
Anschließend kannst du OpenLibry installieren. Dabei bieten sich zwei Modi an: Entweder ein Sandbox-Modus zum Ausprobieren, bei dem nach Beendigung der Ausführung alles wieder entfernt wird. Oder die dauerhafte Installation, die auch automatisch mit Rechnerstart, bei Abstürzen etc. wieder mit startet. Folgende Schritte sind so oder so zu erledigen (Zum Beispiel im Home-Verzeichnis):
Kopiere das Repository aus github: git clone https://github.com/jzakotnik/openlibry.git
Wechsle in das dabei dabei entstandene Verzeichnis: cd openlibry
Anschließend musst du die Konfiguration/individuelle Anpassung von OpenLibry vornehmen: Zum einen müssen Bilddateien mit den Logos deiner Institution hinterlegt werden. Diese befinden sich im "public" Unterordner, du kannst dich dabei an den vorhandenen Beispielbildern orientieren. Weiterhin muss eine ".env"-Datei angelegt werden. (Hinweis: Dateien mit führenden Punkt sind in der grafischen Oberfläche standardmäßig "unsichtbar". Die Tastenkombination "Strg-h" macht sie sichtbar.) Kopiere dazu die vorhandene ".env_example" Datei nochmal in den Ordner und benenne sie dabei um in ".env":
cp .env_example .env
Bearbeite die entstandene ".env" Datei mit einem Texteditor und passe die Werte entsprechend an.
Anschließend kannst du Docker alle notwendigen Schritte automatisch übernehmen lassen: docker build --no-cache -t openlibry .
Das weitere Vorgehen unterscheidet sich je nach Absicht:
a) Sandbox-Modus zum rückstandsfreien Ausprobieren:
docker run -i --rm -p 3000:3000 -t openlibry
http://localhost:3000
docker image rm openlibry
b) Dauerhafte Installation
docker run -i --restart always -p 3000:3000 -t openlibry
Er wird dabei auch nach jedem Neustart etc. automatisch gestartet. Der Prozess kann, sobald du keine Debug-Ausgaben in der Konsole mehr mitlesen möchtest, den Prozess einfach wieder beenden mit der Tastenkombination "Strg-c". Der Container wird automatisch neugestartet.http://localhost:3000
docker rm openlibry
und docker image rm openlibry
Das liest sich schon echt gut!
Das Problem bei der Dauerhafte Installation
ist, dass das Datenbank-File beim Docker container im Container bleibt und sobald der Container neu gebaut wird aus einem Image ist alles weg. Deshalb ist beim docker compose
ein Volume gemountet. Das sollte noch rein..
Das hab ich alles umgesetzt, ich hoffe korrekt. Liegt alles im pull request. Schau gerne mal bei Gelegenheit, ob das jetzt besser ist.
Am 20. August 2024 17:19:18 MESZ schrieb Jure Zakotnik @.***>:
Das liest sich schon echt gut!
Das Problem bei der
Dauerhafte Installation
ist, dass das Datenbank-File beim Docker container im Container bleibt und sobald der Container neu gebaut wird aus einem Image ist alles weg. Deshalb ist beimdocker compose
ein Volume gemountet. Das sollte noch rein..-- Reply to this email directly or view it on GitHub: https://github.com/jzakotnik/openlibry/issues/130#issuecomment-2299119020 You are receiving this because you were assigned.
Message ID: @.***> -- Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
Done
Man könnte den Anleitungstext zur Erstinstallation ergänzen mit ein paar Infos. Mein persönlicher Reminder sieht so aus (funktioniert unter Linux Mint 21.3):
Für die Produktivumgebung muss der Autostart und Restart des Docker-Containers eingerichtet werden, was am einfachsten geht durch Ergänzung der Docker-Compose Datei "docker-compose.yml", die dann so aussieht: