NFS Volume Share für Portainer auf Synology DS

User6554

Benutzer
Mitglied seit
09. Jan 2021
Beiträge
46
Punkte für Reaktionen
10
Punkte
8
Liebe Community,

ich versuche (eigentlich) was relativ einfaches zu machen, bin aber nach Stunden und Stunden verzweifelt.
In meinem lokalen Netzwerk läuft in einem Proxmox Ubuntu 20.04 Container eine Portainer Installation, ohne weitere Probleme.
Mein Ziel ist es, auf meiner Synology DS920+ mit DSM 7.0.1 ein NFS Shared Folder als Docker Volume für Portainer zur Verfügung zu stellen. Dasselbe mache ich bereits für Proxmox und es funktioniert wunderbar. Nicht aber für Portainer. Weiß bitte jemand, an was es scheitert? Es folgend Details mit Screenshot, viele, um so viel Information wie möglich rüberzubringen.

1. Ich erstelle in der DS den Shared Folder "portainer_nfs":
Captura de Pantalla 2022-05-13 a las 13.12.24.png
2. Ich setze für diesen Shared Folder die NFS Berechtigungen:
Hierfür setze ich die IP des Portainer Servers: 192.168.178.130
und die die Subnet IP's der Container, die auf der Portainer Instanz laufen (zur Sicherheit): 127.17.0.0/24
Captura de Pantalla 2022-05-13 a las 13.13.28.pngCaptura de Pantalla 2022-05-13 a las 13.13.36.png
Als Mount-Pfad erhalte ich: /volume1/portainer_nfs

3. Ich überprüfe in den DS Einstellungen für NFS, dass auch wirklich NFS v4.1 aktiviert ist:Captura de Pantalla 2022-05-13 a las 13.20.23.png
-> ist aktiviert

4. Nun gehe ich zu Portainer und erstelle ein neues NFS-Volume, das auf meine DS zeigen soll:
Ich mounte /volume1/portainer_nfs und nenne das Volume "portainer_nfs". IP Adresse des NFS-Shares ist meine DS: 192.168.178.30
Captura de Pantalla 2022-05-13 a las 13.09.34.png

5. Ich gehe in den jeweiligen Container (in diesem Fall "heimdall"), unter der Option "Volumes" und versuche, das neu erstellte Volume zu nutzen:
Captura de Pantalla 2022-05-13 a las 13.09.54.png
-> Wenn ich diesen Container starte, erhalte ich die folgende Fehlermeldung:
Failure
failed to mount local volume: mount :/volume1/portainer_nfs:/var/lib/docker/volumes/portainer_nfs/_data, flags: 0x400, data: addr=192.168.178.30,rsize=8192,wsize=8192,tcp,timeo=14,nfsvers=4: operation not permitted


Nun versuche ich es anders: Ich nutze nicht die "Volume" Option von Portainer, sondern die "Bind" Option...
Captura de Pantalla 2022-05-13 a las 13.30.55.png
-> Der Container Heimdall (in diesem Fall) startet ohne Fehlermeldung! Wenn ich aber den gemounteten Pfad auf der DS anschaue, sind keine Container-Daten übertragen worden. Er startet, allerdings besteht offensichtlich keine NFS-Verbindung. Hier ein Bild des Lehrer DS Shared Folders:
Captura de Pantalla 2022-05-13 a las 13.14.04.png

Die Container Logs geben, wenn ich mich Irre, keine Info über das Problem:
--------------------------------------


[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 01-envfile: executing...
[cont-init.d] 01-envfile: exited 0.
[cont-init.d] 02-tamper-check: executing...
[cont-init.d] 02-tamper-check: exited 0.
[cont-init.d] 10-adduser: executing...
usermod: no changes
-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/
Brought to you by linuxserver.io
-------------------------------------
To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------
User uid: 911
User gid: 911
-------------------------------------
[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 20-config: executing...
[cont-init.d] 20-config: exited 0.
[cont-init.d] 30-keygen: executing...
using keys found in /config/keys
[cont-init.d] 30-keygen: exited 0.
[cont-init.d] 50-config: executing...
New container detected, installing Heimdall
Setting permissions
[cont-init.d] 50-config: exited 0.
[cont-init.d] 90-custom-folders: executing...
[cont-init.d] 90-custom-folders: exited 0.
[cont-init.d] 99-custom-files: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-files: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.


-------------------------------------------------

Eigentlich sollte in dem NFS Pfad auf meiner DS (/volume1/portainer_nfs/heimdall), die folgenden Dateien enthalten sein:
Captura de Pantalla 2022-05-13 a las 13.34.42.png
Das weiß ich, weil das das Ergebnis ist, wenn ich den Container "heimdall" über die Synology Docker App laufen lasse und einfach lokal unter dem standard Docker-Verzeichnis laufen lasse, in der DS.

Hinzu kommt, dass unter Portainer->Volumes, mein NFS-Volume der DS als "unused" dargestellt wird:
unused.png


Kann mir jemand helfen? Es sollte doch eigentlich nicht so schwer ein... es ist ja ein einfaches Einbinden eines NFS-Volumes.
Ich bin um jede Hilfe dankbar, ich habe nichts in anderen Foren / Internet gefunden und ich kann mir vorstellen, dass ich nicht der einzige bin, der für seine Portainer-Intstanz, NFS-Volumes mit seiner DS zur Verfügung stellen möchte.

Vielen Dank!
 
Zuletzt bearbeitet:

LePremier

Benutzer
Mitglied seit
06. Apr 2015
Beiträge
1
Punkte für Reaktionen
0
Punkte
1
Hallo User6554,

hast Du auf dem Host auf dem Du den Portainer Container laufen lässt den NFS Client installiert?

Das ist nach meinem verständnis Voraussetzung damit die Verbindung zu dem Shared Folder aufgebaut werden kann.

Falls der Client noch nicht installiert ist, kannst Du das hiermit machen:

1. Alles aktualisieren:

Code:
sudo apt update -y && sudo apt upgrade -y

und dann Client installieren

Code:
sudo apt install nfs-common

Viele Grüße,

LP
 

User6554

Benutzer
Mitglied seit
09. Jan 2021
Beiträge
46
Punkte für Reaktionen
10
Punkte
8
Hallo @LePremier!

Danke für deine Nachricht. Ich kann bestätigen, dass der nfs-common Client installiert war, ja. Es ist zwar schon eine Weile her, ich meine mich aber erinnern zu können, wie ich am Ende zur Lösung kam:

Das Problem lag am Ubuntu Container. Ich habe bei meiner Recherche auch andere Fälle gefunden, die auf diese Antwort kamen. Ich kann mich aber leider nicht erinnern, was genau am Ubuntu Container das Problem war. Fakt ist: Sobald ich einen normale Ubuntu VM erstellt hatte und dieselben Schritte darauf durchführte, funktionierte alles wie es soll.

Danke und viele Grüße,
User6554
 


 

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