Oh nein. Da muß ich vehement widersprechen.
Oh doch.
Das gleiche gilt für Nextcloud. Der Docker-Container läuft out-of-the-box. Wenn ich an das Gefrickel denke Own- oder Nextcloud nativ auf das NAS zu bringen...
Oh nein. Da muß ich vehement widersprechen.
Oh doch.
Das gleiche gilt für Nextcloud. Der Docker-Container läuft out-of-the-box. Wenn ich an das Gefrickel denke Own- oder Nextcloud nativ auf das NAS zu bringen...
Genau meine Rede. Die ersten Versuche waren ja Nextcloud nativ (also ohne Container) direkt auf der NAS zu installieren. Die Installation hat auch auf Anhieb mit einer MySQL-DB funktioniert. Aber der Rest...Grauenhaft...
Evtl. kannst Du auch unter -> Virtualisierung, Nextcloud, MariaDB und meine Fragen was beitragen?
Ja wenn, dann mache ich das, ich bin halt noch nicht so weit. Der Container läuft jetzt immerhin, aber das war es auch erstmal. Das kostet bestimmt noch einige Stunden.
Das ist ja cool. Du bastelst das heute noch fertig, exportierst den Container, schickst ihn mir und ich kann morgen den Container importieren. Dann hab ich eine funktionierende Instanz von Nextcloud mit Datenbankanbindung. Somit alles ohne Streß für mich. Das verstehe ich unter Community.
Ich werde da vielleicht am Wochenende weitermachen
Na gut, solange kann ich auch noch warten.
Nimmst Du SQLight, natives MariaDB oder MariaDB im Container für NC her?
Dann brauche ich den Container für MariaDB auch noch...
Zur Zeit verwende ich MariaDB des Systems. Das kannst Du ja auch machen. Ich will halt die DB im Container zum laufen bringen.
Erste zaghafte Versuche scheitern leider. Als Docker Nextcloud und MariaDB (jeweils "latest") genommen.
Kann Nextcloud auch aufrufen, aber bei dem Versuch Nextcloud mit MariaDB zu installieren wirft er Timeout...bzw. keine Verbindung zur Datenbank...
Wie kann ich eigentlich innerhalb des MariaDB- Containers eine Datenbank mit PMA anlegen?
Das muss ich auch erst untersuchen. Läuft der MariaDB-Container schon? Also ist er grün?
Hallo allerseits,
ich hänge mich mal mit rein und schildere mein Setup.
Ich habe auf meiner Qnap Nextcloud über einen zusätzlichen Apache innerhalb eines selbst angepassten Docker-Containers am Laufen und nutze das nativ bereitgestellte MariaDB der Qnap. Der Docker-Container mit Apache verwendet den Netzwerkmodus "Host". Mit diesem Setup habe ich bisher sehr gute Erfahrungen sammeln können.
Als Docker-Basis-Image verwende ich "webdevops/php-apache". Dieser bringt bereits ein vollständiges PHP7 und einen voll konfigurierbaren Apache mit. Standardmäßig muss dort nichts mehr groß konfiguriert werden. Da ich jedoch mehrere virtuelle Hosts verwende, musste ich spezielle Anpassungen vornehmen. Diese sind jedoch nicht in jedem Fall nötig.
Dem Docker-Container wird nun lediglich das passende Verzeichnis der Qnap, worin sich der Inhalt des Webservers befindet, als volume durchgereicht. Nextcloud liegt dort als simples Verzeichnis und wurde initial einfach direkt in diesen Ordner kopiert.
Zur einfacheren Pflege/Administration habe ich mir ein paar Skripte geschrieben, welche auf Befehl über docker-compose und einem Dockerfile automatisch ein neues Image aus dem angebotenen Basis-Image erzeugen und danach den vorhandenen Container updaten.
Zum Backup von MariaDB starte ich täglich einmal das Skript von Kenneth Friebert (mysqlbackup - ist im original englischen Qnap-Forum zu finden), welches ein Backup aller vorhandenen MariaDB-Datenbanken durchführt. Diese werden dann zeitversetzt auf eine externe HDD per Hybrid Backup Sync gesichert und tagsüber mit der Cloud synchronisiert. Solltest du PostgreSQL verwenden, so steht auf meiner github-Seite die Lösung von Kenneth Friebert auf PostgreSQL portiert zur Verfügung (ariaci/pgsqlbackup).
Ciao
ariaci
Danke für die Erklärung Deines Setups. LEider bringt mich das nur bedingt weiter.
Ich vrauche vorerst keine vHost, und ich will MariaDB mit einem Container nutzen.
Wie verrate ich Nextcloud welches MariaDB verwendet werden soll, bzw. wie kann ich phpMyAdmin mit dem Docker nutzen. Ich muß ja voraussichtlich erstmal eine DB für Nextcloud anlegen.
Moin rednag,
theoretisch kannst du über phpMyAdmin deine Docker-MariaDB pflegen. Du müsstest halt nur den Server entsprechend konfigurieren und in der phpMyAdmin-Konfiguration den Server unter $cfg['Servers'][...] mit aufnehmen. Der Docker-Container sollte dann seinen internen MariaDB-Port an den Host unter einem evtl. anderen Port weiterreichen. Evtl. deshalb, da ich in deinem konkreten Fall nicht weiß, ob der Standardport (ist glaube ich 3306) von MariaDB schon verwendet wird. Dann kannst du alles über phpMyAdmin konfigurieren.
Eine andere Möglichkeit wäre, ein MariaDB-Image zu nehmen, was bereits einen eigenen Webserver mit phpMyAdmin mitbringt. Dann kannst du über den Browser und den passenden Port direkt auf die passende Docker-Instanz zugreifen.
Die dritte Möglichkeit wäre die Administration über die Shell des Docker-Containers. Es sollten dort sämtliche Tools, wie mysql, zur Verfügung stehen. Das wäre aber deutlich mühseliger.
Die Verbindung zum Nextcloud funktioniert entweder über einen Container-Link oder indem der passende Port des Hosts verwendet wird. Bei einem Link habe ich Docker so verstanden, dass Informationen direkt über die passenden Ports ausgetauscht werden können, ohne dass der Host davon etwas mitbekommt. In beiden Fällen weiß ich leider nicht genau, was noch so konfiguriert werden muss.
Vielleicht hilft dir das etwas weiter ...
Ciao
ariaci
Hallo @ariaci und Danke für Deine umfangreiche Anleitung.
Ich glaube ich stelle mich zu dämlich an. Hab jetzt mal sämtliche Container gelöscht und würde gerne wieder von vorne anfangen. Evtl. hast Du mal Lust mir per Teamviewer unter die Arme zu greifen.
Als Container würde ich jeweils die Originalen von Nextcloud, MariaDB und phpMyAdmin nehmen. Leider setzt es bei mir schon aus, wie ich die einzelnen Container mit welcher Konfiguration anlegen soll.
Moin rednag,
Können wir durchaus machen ... ich habe mich da mal mit den zwei Images MariaDB und phpMyAdmin befasst. Die sollten am einfachsten und schnell konfiguriert sein. Die Verbindung funktioniert über Links sehr einfach.
Im Prinzip muss der MariaDB-Container per Link an den phpMyAdmin-Container gebunden werden. Danach kann phpMyAdmin den MariaDB-Container über einen sicheren Kanal erreichen. MariaDB benötigt keinerlei große Konfiguration. Es muss lediglich das Volume für die Daten mit einem lokalen Ordner verbunden werden.
Bei NextCloud sollte es dann ein ähnliches Vorgehen sein.
Probiere das mal aus. Wenn du garnicht weiterkommst, mach nen Vorschlag, wann es bei dir passt und wir schauen weiter ...
Ciao
ariaci
Und ich wäre ich euch total dankbar, wenn einer dann das auch als Schritt-für-Schritt Anleitung posten könnte, denn ich bin auch schon seit langem an so etwas interessiert, vor allem weil ich bisher auch keine Ahnung von Docker etc. habe
Da ich merke, dass es wohl einige Leute gibt, die mit MariaDB, phpMyAdmin und NextCloud über Docker Probleme haben, habe ich mich mal hingesetzt und versucht ein Schritt-für-Schritt-Tutorial zu bauen. Der erste Teil beschäftigt sich mit MariaDB und phpMyAdmin über Docker. Bei beiden verwende ich die offiziellen Docker-Images. Bitte seht dieses kleine Mini-Tutorial lediglich als Leitfaden. Ich kann nicht sicherstellen, dass die Schritte auf allen Systemen identisch sind oder nicht irgendwo Probleme verursachen.
0) Allgemein: Docker-Container auf Qnap-NAS erstellen
(!) Bitte beachten
Um sämtliche Einstellungen eines Images für seinen Container korrekt festlegen zu können, ist ein Blick in die dazugehörige Dokumentation immer ratsam. Die meisten Images inkl. deren Beschreibungen und Quellcodes können direkt auf dem Docker-Hub (https://hub.docker.com) vorgefunden werden.
1) MariaDB + phpMyAdmin: MariaDB-Container auf Qnap-NAS erstellen
2) MariaDB + phpMyAdmin: phpMyAdmin-Container auf Qnap-NAS erstellen und mit MariaDB verbinden
3) MariaDB + phpMyAdmin: phpMyAdmin im Browser verwenden
Das war's dann erstmal von mir. Ich hoffe, ihr könnt/konntet mit der kleinen etwas anfangen.
Und nun viel Spaß beim Nachmachen ...
Ciao
ariaci
Ich habe das mal nach Anleitungen als Howto kopiert.
[Howto] MariaDB + phpMyAdmin im Docker-Container
Wow, eine sehr gut erklärte und bebilderte Arbeit. Da hast Du Dir eine Menge Arbeit damit gemacht. Ich denke Du sprichst damit viele User (inkl. meine Wenigkeit) an. Docker ist unheimlich spannend wie ich persönlich finde, aber noch nicht in der breiten Masse angekommen. Dafür ist das ganze zu nerdig und komplex. Also zumindest empfinde ich das so. Dank der guten Anleitung konnte ich mich bei phpMyAdmin mit dem vorher gesetzten PW anmelden und eine Datenbank für Nextcloud erstellen. Das war es aber dann auch schon wieder.
Ich vermute ich muß für Nextcloud auch noch irgendwas unter "Umwelt", "Netzwerk" oder so eintragen oder? Das höchste der Gefühle wäre ein eigenes Verzeichnis für "data" Also nicht /nextcloud/data sondern ein gemeinsamer Ordner auf der NAS. Aber das ist derzeit noch zu hoch für mich. Ich meine ja, ich konnte dank Deiner Anleitung ein kleines Erfolgserlebnis verbuchen, aber vertanden habe ich es nicht wirklich. Evtl. kannst Du doch mal per TV draufgucken. Hab auch noch ein anderes Problem mit dem vSwitch. Das kann ich Dir aber gerne per PN schildern, da es hier OT ist und nicht zum Thema gehört.
Ein ganz dickes "Dankeschön" für die Anleitung!
Da ich alleine leider noch nicht weitergekommen bin wollte ich mal kurz nachfragen, wie hoch die Chancen stehen bei der Anleitung noch Nextcloud mit aufzunehmen?
Ich gebe Dir auch ein virtuelles aus.