NextCloud Template für docker-compose

Status
Für weitere Antworten geschlossen.

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.468
Punkte für Reaktionen
356
Punkte
103
Ich hatte vor längerer Zeit mal ein Templating für den Betrieb von NextCloud mit docker-compose für die Syno gebastelt. Eigentlich hatte ich das mal für nachon gebaut und dann erst gemerkt, dass die PMs hier keine Anhänge erlauben. Vielleicht kann ja jemand anderes auch etwas damit anfangen.

Für wenn ist es geeignet: für Leute die Wissen, wie man mittels SSH auf die Shell kommt, dort im Dateisystem navigiert und Befehle ausführt.

Nutzung:
- Zip-Datei https://mega.nz/#!PwwHwChJ!fhAEMPAWtttNWdifgxm4KsOFNzFTWXCmJxsyzg2gjEk herunterladen und auspacken
- mit einem Editor eurer Wahl (Visual Studio Code, Notepad++, Sublime, ....) die Variablen in der Datei render.sh anpassen
- render.sh und docker-compose.template auf eure Syno kopieren
- mit SSH auf der Shell einloggen
- mit `sudo -i` zum root-Benutzer wechseln
- mit `cd` in das Verzeichnis wechseln, in das ihr die beiden Dateien kopiert habt
- mit `chmod +x render.sh` die Datei ausführbar machen
- mit dem Befehl ´./render.sh up -d` die Konfiguration rendern und deployen lassen

render.sh ersetzt die Wert der Variablen in-memory in der docker-compose.template-Datei und übergibt das Ergebnis an docker-compose. Die Template-Datei wird dabei nicht verändert! render.sh delegiert sämtliche arbeit an docker-compose, so dass ihr statt `docker-compose up -d` nun `./render.sh up -d` verwendet.

Ich hoffe die Nutzung ist verständlich... Anonsten: bei Fragen fragen!
 
Zuletzt bearbeitet:

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.468
Punkte für Reaktionen
356
Punkte
103
Hier noch ein Bash-Skript um das Template von Mega.nz über die Shell zu ziehen und die Mount-Pfade anzupassen - es muss als root ausgeführt werden:
Code:
# Pfad für den docker Share auslesen
docker_base=$(synoshare --get docker | grep -oE '/volume\w*/\w*')
# Datenverzeichnisse für Nextcloud und Datenbank anlegen 
mkdir -p ${docker_base}/nextcloud/{app,db}
# notwendig fuer den mega.nz download
wget 'https://megatools.megous.com/builds/experimental/megatools-1.11.0-git-20180930-linux-x86_64.tar.gz' -O  /tmp/megatools.tar.gz
tar xzf /tmp/megatools.tar.gz  --strip-components=1 -C /tmp/
/tmp/megatools dl --path ${docker_base}/nextcloud/nextcloud_template.zip 'https://mega.nz/#!PwwHwChJ!fhAEMPAWtttNWdifgxm4KsOFNzFTWXCmJxsyzg2gjEk' 
# zip auspacken
7z e ${docker_base}/nextcloud/nextcloud_template.zip -o${docker_base}/nextcloud/
# render ausführbar machen
chmod +x ${docker_base}/nextcloud/render.sh
# Pfade für die Mount-Volumes anpassen
sed -i "s|MARIA_VOLUME_HOST=.*|MARIA_VOLUME_HOST=${docker_base}/nextcloud/db/|" ${docker_base}/nextcloud/render.sh
sed -i "s|NEXTCLOUD_VOLUME_HOST=.*|NEXTCLOUD_VOLUME_HOST=${docker_base}/nextcloud/app/|" ${docker_base}/nextcloud/render.sh

Den Rest der Parameter könnte man mit vi oder direkt über den Share editieren - oder nextCloud direkt starten mit `./render.sh up -d`.
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat