Datenbanken in Docker (mariaDB, PostgreSQL, MySQL)

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

173.x.x.x ist keine private IP mehr.
Das andere ist aber gerade merkwürdig
 
Hab jetzt mal alles entfernt.

1692974194958.png

Versuch ein Netzwerk anzulegen scheitert. Hab auch kein MacVLAN o.ä. im Einsatz. Aus einem Container heraus scheint es aber zu funktionieren.#

EDIT:
mit der 172.15.0.0/16 hat es jetzt funktioniert.

1692974421129.png
 
Dann wird das irgendwo in Verwendung gewesen sein.... Aber ist ja super, dass es jetzt geklappt hat.
 
Verbindung zu Postgres via PGAdmin und HeidiSQL hat auch auf anhieb funktioniert. Toll.

Jetzt noch eine Frage. Ich hatte für das neue Netzwerk das Subnetz 172.15.0.0 benutzt. Das muss ich dann wie im Screenshot sichtbar in der Firewall dann auch freigeben richtig?

1692975048931.png

und wenn jemand die Antwort auf die Zusatzfrage kennt wäre das auch schön :-)

Es gibt auch die Möglichkeit die Daten im Dockercontainer selbst zu speichern.
Statt "/volume1/docker/postgres:/var/lib/postgresql/data" könnte ich "data:/var/lib/postgresql/data" nutzen.
Wo liegt den hier der Unterschied? Mir wäre jetzt nur bekannt, dass ggf. Daten verloren gehen wenn man den Docker Container neustartet.
 
Ich kann dir nur die Zusatzfrage beantworten :D
In beiden Fällen gehen die Daten NICHT verloren. Wenn einen Ordner mappst, dann legst du den Pfad fest wo Docker die Daten ablegen soll. also z.B. /volume1/docker/postgres. Wenn du ein Docker Volume nutzt, dann legt Docker die Daten auf der Synology in /volume1/@Docker/volumes/ ab. Wenn du gar nichts mappst, dann gehen die Daten beim Neustart verloren.
 
ok, manche Ordner können auch versteckt sein. Im Dateiverzeichnis macht man dort eh nichts. Ist vielleicht dann für die Übersichtlichkeit besser.
Danke für die Erklärung.
 
Ich weiß nicht wie es sich verhält, wenn du mal Docker neu installierst. Könnte mir vorstellen, dass er all seine Dateien löscht. Dann wären auch deine Volumes weg. Ich leg alles für mich gut zugänglich ab. Ich weiß z.B. auch nicht was Synology im Hintergrund macht, wenn man bei einem Update ein Paket repartieren soll.
 
Ich leg alles für mich gut zugänglich ab.
Also dann mit /volume1/docker/dockername dann hat man alles auf dem Dateiverzeichnis und weiß wo es liegt.

EDIT:
Das auch wieder so komisch, warum ich mich nicht anmelden kann, obwohl die Anmeldedaten im Docker Compose stehen.
1692977447933.png
2023-08-25 15:13:44 3 [Warning] Access denied for user 'admin'@'172.15.0.5' (using password: YES)
2023-08-25 15:30:06 5 [Warning] Access denied for user 'admin'@'172.15.0.5' (using password: YES)
2023-08-25 15:30:11 6 [Warning] Access denied for user 'admin'@'172.15.0.5' (using password: NO)
2023-08-25 15:30:25 7 [Warning] Access denied for user 'admin'@'172.15.0.5' (using password: YES)
 
  • Like
Reaktionen: alexhell
Oh das habe ich total übersehen... Stimmt. Das ist keine gute Idee das so zu machen
 
ich mache diesen Post nochmal weiter, da er ziemlich gut in meine Fragestellung passt.
Meine Ausgangssituation
Synology NAS 10.10.7.2
installierter Portainer
Auf dem NAS eine MariaDB aus dem Paketzentrum. Port 3307

Was ich versuche ist Vaultwarden über Portainer zu installieren, aber mit dem Unterschied, dass ich gerne möchte, dass die Maria DB genutzt wird und nicht die Postgres

Als Grundlage diente mir bis dato (Parameter natürlich durch meine eigenen ergänzt:
version: "3.9"
services:
db:
image: postgres
container_name: Vaultwarden-DB
hostname: vaultwarden-db
mem_limit: 512m
cpu_shares: 768
security_opt:
- no-new-privileges:true
user: 1026:100
healthcheck:
test: ["CMD", "pg_isready", "-q", "-d", "vaultwarden", "-U", "vaultwardenuser"]
timeout: 45s
interval: 10s
retries: 10
volumes:
- /volume1/docker/vaultwarden/db:/var/lib/postgresql/data:rw
environment:
POSTGRES_DB: vaultwarden
POSTGRES_USER: vaultwardenuser
POSTGRES_PASSWORD: vaultwardenpass
restart: on-failure:5

vaultwarden:
image: vaultwarden/server:latest
container_name: Vaultwarden
hostname: vaultwarden
mem_limit: 256m
mem_reservation: 96m
cpu_shares: 1024
security_opt:
- no-new-privileges:true
user: 1026:100
ports:
- 4080:4020
volumes:
- /volume1/docker/vaultwarden/data:/data:rw
environment:
ROCKET_PORT: 4020
DATABASE_URL: postgresql://vaultwardenuser:vaultwardenpass@vaultwarden-db:5432/vaultwarden
ADMIN_TOKEN: MariushostingMariushostingMari13
DISABLE_ADMIN_TOKEN: false
DOMAIN: https://vaultwarden.yourname.synology.me
SMTP_HOST: smtp.gmail.com
SMTP_FROM: Your-own-gmail-address
SMTP_PORT: 587
SMTP_SECURITY: starttls
SMTP_USERNAME: Your-own-gmail-address
SMTP_PASSWORD: Your-own-app-password
restart: on-failure:5
depends_on:
db:
condition: service_started


Laut dem hilfelink weiter oben muss ich die Maria DB ja angeben mit

Beispiel für die Verwendung eines Nicht-Docker-MySQL-Servers​

Server IP/Port 192.168.1.10:3306 UN: dbuser / PW: yourpassword / DB: vaultwarden
mysql://dbuser:yourpassword@192.168.1.10:3306/vaultwarden

Die Maria DB hab ich angelegt mit
DB Admin: vaultwardenadmin
DB PW: vaultwarden!


Ich bin aber tatsächlich zu blöd, dass so zu integrieren, dass ich eine vernünftige Grundlage habe.
Kann mir jemand auf die Sprünge helfen bitte?


LG und ein schönes Wochenende
 

Additional post fields

 

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