QNAP - Container - NextCloud

ral9004

Lieutenant
Registriert
Dez. 2017
Beiträge
569
Hallo

Das "NextCloud" Docker Image in QNAP installiert.
MariaDB 10 ist installiert
qnap-mariadb10.png


Image NextCloud Installation
qnap-nextcloud.png


Done
qnap-container.png


Wenn der NextCloud geöffnet wird, bin ich blockiert
nc-ersterstart.png


Auf Grund der Information "Leistungswarnung" habe ich auf "MariaDB" geändert:
nc-ersterstart-mariadb.png


Egal was ich in die Felder eingebe, ich erhalte immer den gleichen Fehler:
Code:
"qnap nextcloud Error while trying to create admin account: An exception occurred in the driver: SQLSTATE[HY000] [2002] No such file or directory"

In diesem Thread skizziert ein Tn folgende Lösung:
"My nextcloud installation was part of HomeAssistant setup, where nextcloud is docker addon (installed through supervisor). Anyways, long story short what I needed to do is run docker ps and see the name of my mariadb container which in my case is addon_core_m"

Mit dieser Antwort habe ich folgende Probleme:
  • MariaDB 10 ist als Applikation direkt in QNAP installiert
  • "run docker ps" - verstehe ich nicht. Vermutlich die CLI von QNAP. Ich könnte mich mit SSH verbinden und testen

Da ich bereits mehrere Stunden an dieser Herausforderung sitze, spanne ich hier das Schwarm Wissen ein und trinke ein paar Tassen Kaffee... 😉 😊

Danke für jeden Hinweis und Tipp.

Grüsse an die Tn
 
Zuletzt bearbeitet:
Dann sag doch mal GENAU was du für die Datenbank eingetragen hast und nicht funktioniert?
 
@NJay Hallo Njay

Nichts.

MariaDB 10 habe ich gerade vorhin installiert.
qnap-mariadb10-config.png


Das Passwort das ich hier eingebe, fülle ich danach in der NextCloud Maske, Feld "Datenbank-Passwort" ein.

In einem Post steht, dass der "Datenbank-Name" db sein müsse. Ein anderer Poster schrieb, dass "Datenbank-Host" als Socket (mit Portnummer) geschrieben werden müsse.

Die Fehlermeldung weisst, IMO auf ein Problem beim DB Zugriff hin. Ich habe in der Next Cloud Doku keinen Hinweis gefunden, dass die Version 10 der MariaDB nicht unterstützt wird.

Grüsse
 
Du scheinst die MariaDB direkt auf dem NAS installiert zu haben - haben die Container überhaupt Zugriff auf die Dienste des Hosts?
 
  • Gefällt mir
Reaktionen: ral9004
ral9004 schrieb:
In einem Post steht, dass der "Datenbank-Name" db sein müsse. Ein anderer Poster schrieb, dass "Datenbank-Host" als Socket (mit Portnummer) geschrieben werden müsse.
Datenbankname, Login und localhost:3306 mal getestet?

db funktioniert iirc nur, wenn sich NC und MariaDB ein Dockernetzwerk teilen.
 
ral9004 schrieb:
In einem Post steht, dass der "Datenbank-Name" db sein müsse. Ein anderer Poster schrieb, dass "Datenbank-Host" als Socket (mit Portnummer) geschrieben werden müsse.
Der Datembankname kann irgendeine existierende Datenbank sein. Wichtig ist der Datenbank-Hostname. Wenn du jetzt die Maria DB über die QNAP direkt installiert hast vermutlich die IP deines NAS und der Port, auf dem die DB läuft.
 
  • Gefällt mir
Reaktionen: guzzisti
NJay schrieb:
Datenbank-Hostname
Ist die selbe Maschine, da sollte es localhost:3306 tun.

Oder localhost:3307, wenn der Port angepaßt wurde ;).
 
Zuletzt bearbeitet von einem Moderator:
guzzisti schrieb:
haben die Container überhaupt Zugriff auf die Dienste des Hosts?
Hallo

Wie prüfe ich das? CLI oder GUI?
Meine Überlegung war, dass die MariaDB perfomanter ist, wenn sie nicht auch in einem Container läuft.

Grüsse
Ergänzung ()

mae1cum77 schrieb:
Datenbankname, Login und localhost:3306 mal getestet?
Hallo

Ja. Test negativ.
Du bist der zweite Tn der die Installation der Maria DB ausserhalb Docker als die Ursache in Betracht zieht.
Kann ich Docker so konfigurieren, dass er mit den QNAP Applikationen in einem Netzwerk spielt?
Falls das zu aufwändig / kompliziert ist, installiere ich MariaDB 10 auch als Container

Grüsse
Ergänzung ()

NJay schrieb:
Der Datembankname kann irgendeine existierende Datenbank sein. Wichtig ist der Datenbank-Hostname. Wenn du jetzt die Maria DB über die QNAP direkt installiert hast vermutlich die IP deines NAS und der Port, auf dem die DB läuft.
Negativ.
Ich habe die Socket Angabe in zwei Varianten getestet:
localhost:[Port]
[IP]:[Port]

Grüsse
 
  • Gefällt mir
Reaktionen: s1ave77
ral9004 schrieb:
Falls das zu aufwändig / kompliziert ist, installiere ich MariaDB 10 auch als Container
würde dies tun, dann ist das einfacher. Läuft bei mir in einem Stack. MariaDB versorgt hier HomeAssistant/influxDB, Nextcloud und Guacamole. Wenn die Leistung für NC reicht, ist der Rest zu vernachlässigen.
Ergänzung ()

Gesetzt den Fall, NC und MariaDB sind im selben Dockernetz und der Name des Containers ist mariadb ist der Datenbankhostname einfach mariadb:3306 (vorrausgesetzt der Standardport wird genutzt, was eh zu empfehlen ist).

Gerade meine Aufzeichnungen gecheckt: db als Datenbank-Hostname reicht, wenn beide im selben Docker-Netz sind.
 
Zuletzt bearbeitet von einem Moderator:
  • Gefällt mir
Reaktionen: ral9004
Zwischenstand:
1. Starte Test mit Container MARIADB. Qnap MariaDB ist deakiviert und neustart NAS läuft

2. Übersicht über die Variabeln:

Die Maske mit dem Titel "Administrator-Konto anlegen" hat sieben Felder, wenn man die MariaDB als DB wählt:
1. Anmelden
2. Passwort
3. Speicher & Datenbank
4. Datenbankkonto
5. Datenbank-Passwort
6. Datenbank-Name
7. Datenbank-Host

IMHO:
1. / 2.
IMO: Diese Feldersind frei wählbar
3.
Funktioniert wahrscheinlich nicht. Unter "var" sehe ich kein "www" Verzeichnis

Code:
[/] # ls var
browse.dat                 lan_hw_info                 pcmcia@
cache/                     ledvalue*                   proftpd/
data_service_irq_affinity  ledvalue_formatting_count*  qfunc/
db/                        lib/                        qnapddns.conf
ddns_tmp.conf              lock/                       qs/
default                    log/                        run/
empty/                     MacAddress                  setting_qouta.conf
got_nas_info               net_irq_affinity            state/
hw_serial_number           openldap-data@              target/
irq_setting                option_extra_lan            tmp@
[/] #

4.
IMO: Superadmin bei MariaDB ist SA

5. / 6. / 7.
sollten klar sein... 🤯

Grüsse
 
ral9004 schrieb:
Funktioniert wahrscheinlich nicht. Unter "var" sehe ich kein "www" Verzeichnis
Wenn du das NC-Volume korrekt gemountet hast, existiert der Pfad für Nextcloud, das reicht, der Rest kann den Ordner nicht sehen, da er im Container liegt. Du siehst nur den lokalen Mountpoint (Ordner), der bei der MariaDB-Installation gewählt wird ;).
 
  • Gefällt mir
Reaktionen: ral9004
mae1cum77 schrieb:
Wenn du das NC-Volume korrekt gemountet hast,
Hallo

Soll ich die Installation über SSH vornehmen / prüfen.
Im GUI kann keinen mount vornehmen

Grüsse
Ergänzung ()

Hallo

Bevor ich das durchwinke, gibt es Einstellungen die ich anpassen sollte?

mariadb-container-inst.png


Grüsse
 
mae1cum77 schrieb:
Ist die selbe Maschine, da sollte es localhost:3306 tun.

Oder localhost:3307, wenn der Port angepaßt wurde ;).
Es ist aber nicht die selbe Maschine. Die Nextcloud läuft in Docker, wenn du der localhost sagst versucht sie sich auf den eigenen Container zu connecten. Um aus einem Container an den localhost der Maschine zu kommen musst du anders vor gehen. Deshalb sollte hier die IP richtig sein. Alternativ über den Proxy von Docker.


Wenn IP auch nicht geht sollte sichergestellt werden, dass die MariaDB auch erreichbar ist. Also mal mit map einen Portscan durchführen.
 
  • Gefällt mir
Reaktionen: ral9004 und s1ave77
ral9004 schrieb:
Im GUI kann keinen mount vornehmen
In der Containerstation wird eine Volume-Kategorie gezeigt.

Gibt's bei der Installation keine Möglichkeit, die zu konfigurieren? Normalerweise wird das NC-Verzeichnis so lokal gemounted, damit Datenbanken Zugriff haben.

Ich habe mit Portainer angefangen und bin schnell auf Docker-Compose über SSH umgestiegen. Ist besser zu handhaben.
 
mae1cum77 schrieb:
Gerade meine Aufzeichnungen gecheckt: db als Datenbank-Hostname reicht, wenn beide im selben Docker-Netz sind.
Das hängt davon ab wie der Service in Docker-compose heißt. Oder der Service im Docker Network.
 
NJay schrieb:
Deshalb sollte hier die IP richtig sein.
Touche, hab ich nicht bedacht. Wenn eh alles auf einem System läuft, würde ich beides als Docker laufen lassen. Einfachere Konfig und bei Backups gehören Datenbank und NC immer zusammen.
NJay schrieb:
Oder der Service im Docker Network.
Der heißt hier klassisch mariadb trotzdem reicht als Hostname db, deshalb hab' ich extra geschaut. Läuft ja hier so.
 
Hallo
MariaDB Docker Installation in QNAP.
Sollen diese Einstellungen angepasst werden, bevor ich die Installation starte?
mariadb-container-inst1.png


mariadb-container-inst2.png


Grüsse
 
ral9004 schrieb:
Zeig' mal bitte 'Umgebungen' und 'Ressourcen'.

Im Idealfall liegen die MariaDB-Daten als Volume lokal. Ebenso die von NC.

Übrigens: mariadb und nicht mariabd, sonst wunderst du sich notfalls ;).
 
Zuletzt bearbeitet von einem Moderator:
ral9004 schrieb:
Sorry 'Speicher' vergessen :). Lokalisationen sind immer wieder ein Abenteuer.
Ergänzung ()

Schau dir ansonsten mal Tutorials bezüglich QNAP-Disk-Station und MariaDB + Nextcloud an.

Wichtig ist, beide im selben Netz zu haben, Rest ist dann relativ. Dann klappt auch die Verbindung.
 
Zurück
Oben