Wekan & MongoDB als Docker Container

lueddich

Benutzer
Mitglied seit
10. Dez 2012
Beiträge
52
Punkte für Reaktionen
8
Punkte
8
Hallo,

ich würde gerne Wekan als DockerContainer auf meiner DS1817+ nutzen. Hierfür habe ich versucht, mich an den Infos unter https://forum.synology.com/enu/viewtopic.php?t=106825 zu orientieren.

Leider basiert die initiale Beschreibung immer noch auf DSM 5.2, die Hinweise bzgl. einer Installation unter 6.1 haben mich auch nicht weiter gebracht.

Ich bekomme es hin, die mongoDB zu starten. Diese meldet mir im Protokoll des Containers auch brav, sie würde auf dem Port 27017 zuhören. Ich bekomme jedoch von Wekan die Meldung, es könne keine Verbindung zur Datenbank aufnehmen.

Hat jemand das Ganze am Fliegen und kann vielleicht ein aktuelles und komplettes Howto zur Verfügung stellen? Bei dem verlinkten Artikel ist wie gesagt eine alte Anleitung mit Hinweisen auf neuer, beides muss dann berücksichtigt werden und widerspricht sich z.T. - so wird bspw. bei den neueren Hinweisen als ContainerPort 80 verwendet, der Port in den Variablen aber nicht angepasst, ich bekomme es jedenfalls nicht hin.

Danke!

Gruß, Jan
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.526
Punkte für Reaktionen
413
Punkte
103
Alternativ kann man die beiden notwendigen Container auch so starten:

docker run -d --restart=always --name wekan-db mongo:3.2.20
docker run -d --restart=always --name wekan --link "wekan-db:db" -e "MONGO_URL=mongodb://db" -e "ROOT_URL=http://{dms ip oder hostname}:8080" -p 8080:8080 quay.io/wekan/wekan

Du musst nur noch anassen was fett gedruckt ist. Der Host-Port, den Du mit -p angibst MUSS natürlich auch zum Port der ROOT_URL passen
 
Zuletzt bearbeitet:

Lazzard

Benutzer
Mitglied seit
10. Jan 2019
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Entschuldigt bitte, dass ich den alten Beitrag herauskrame, aber ich versuche seit gestern Abend Mongo und Wekan ans laufen zu bringen.
Wekan schaltet sich immer wieder ab und bringt die folgende Meldung: MongoError: database name must be a string
 

3x3cut0r

Benutzer
Mitglied seit
21. Mai 2011
Beiträge
507
Punkte für Reaktionen
15
Punkte
44
Ich hatten den Fehler auch "MongoError: database name must be a string".
Habe dann bei google gefunden, das man die MongoDB nicht mehr per Link sondern per url anbinden muss. Dannach gings.

Rich (BBCode):
docker run -d --network bridge --restart always --name mongo -v /volume1/docker/mongo:/data/db:z -p 27017:27017 mongo:3.6.9 mongod --smallfiles --oplogSize 128 --replSet rs0
# /volume1/docker/mongo -> Mein Verzeichnis, dass die MongoDB Dateien mapped und speichert.
# mongo:3.6.9 -> ich nutze die neuste stabile 3er Version
# mongod --smallfiles --oplogSize 128 --replSet rs0 -> ist bei mir nötig, da ich die mongodb parallel noch für einen Rocket.Chat Docker Container benutze und es dafür nötig ist, das replSet zu aktivieren

docker run -d --restart=always --name wekan -e "MONGO_URL=mongodb://<ip der mongodb = lokale ip meiner nas>:27017/wekan" -e "ROOT_URL=https://wekan.<meine öffentliche ddns adresse der nas>" -p 8080:8080 wekanteam/wekan:v3.21
# Reverse Proxy Eintrag (wekan. ....) muss dann auf 8080 umleiten

Gruß
 

3x3cut0r

Benutzer
Mitglied seit
21. Mai 2011
Beiträge
507
Punkte für Reaktionen
15
Punkte
44
Das ist der Code um die Container auf der Console als root zu Downloaden und zu starten.
Du kannst das ganze aber auch ganz normal über die Oberfläche machen.
Dazu fährst du dein wakan Docker Container herunter / gehst auf Bearbeiten / Umgebung / + für neue Zeile / Variable = "MONGO_URL" / Wert = "mongodb://<ip der mongodb = lokale ip meiner nas>:27017/wekan"

Hier kannst du auch gleich die Umgebungsvariable für die ROOT_URL eintragen.

Gruß
 

Lazzard

Benutzer
Mitglied seit
10. Jan 2019
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Irgendwie bekomme ich das nicht hin. Kann mir bitte mal jemand schreiben, was er unter Umgebung beim Wekan stehen hat unter MONGO_URL? Danke :)
 

Lazzard

Benutzer
Mitglied seit
10. Jan 2019
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Habe ihn jetzt ans laufen bekommen. Hier mein Vorgehen und meine Einstellungen, anhand https://forum.synology.com/enu/viewtopic.php?t=106825#p504980

Meine Einstellungen:
The settings for my Mongo Container are:
Volume
File/Folder: /docker/MongoDB (use any folder you like here)
Mount path: /data/db

Port Settings
Local Port: 27017
Container Port: 27017
Type: TCP


The settings for my Wekan Container are:
Volume tab
File/Folder: /docker/Wekan (again, use any folder you like here)
Mount path: /Wekan

Port Settings
Local Port: 24444
Container Port: 80
Type: TCP

Links
Container Name: MongoDB
Alias: db

Environment

variable: ROOT_URL
Value: https://<mein nas ip>:5050 [IP address where Wekan is] (ROOT_URL needs to be full url to real address where wekan is, for example https://example.com/wekan; If you are using this only locally, the IP and port is OK as well, e.g. 192.168.0.10:5050)

variable: MONGO_URL
Value: mongodb://<mein nas ip>:27017/wekan

Bisher funktioniert die Mailfunktion noch nicht, aber das habe ich mir noch nicht angeschaut.
 

dolterfriek

Benutzer
Mitglied seit
29. Jan 2020
Beiträge
19
Punkte für Reaktionen
0
Punkte
1
Wekan SSL

Hallo Lazzard,

wie hast Du das mit https hinbekommen?
Über "normal-http" läuft das Ding bei mir, aber sobald ich die HTTPS-Domäne und Port 3001 angebe kommt:

Rich (BBCode):
Fehler auf. PR_END_OF_FILE_ERROR

Die Angaben zu den Ports habe ich von hier:
https://github.com/wekan/wekan/wiki/Settings

kann mit biitte jemand sagen, wie ich das hinkriege?

Grüße
 

FrAntje

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
359
Punkte für Reaktionen
17
Punkte
18
Ich glaube dass es bei Lazzard so mir dem https auch nicht hin haut, mit diesen Einstellungen leitet er trotzdem auf die http Seite um.

Hat es denn schon jemand mit SSL und DynDNS zum laufen bekommen?
 

dolterfriek

Benutzer
Mitglied seit
29. Jan 2020
Beiträge
19
Punkte für Reaktionen
0
Punkte
1
Hallo Gemeinde,

also, ich habe es wohl irgendwie zum laufen gekriegt:

1. im Router eine Portweiterleitung z.B. 32445 -> 32888

2. Reverse-Proxy auf DS
Quelle: HTTPS - Port: 32888
deine_url_dyndns

Ziel: HTTP
localhost
Port: 32445

3. Docker Wekan Einstellungen
Ports: 32445 -> 8080
Umgebungsvariablen:
PORT -> 8080
ROOT_URL -> http://_deine_url_dyndns:32445/wekan

Vieleicht hilfts ja noch jemandem
Grüße & bleibt alle schön gesund!
 

FrAntje

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
359
Punkte für Reaktionen
17
Punkte
18
Danke für die Antwort.

Ich vermute mal dass es hier häufig zu Kommunikationsproblemen kommt, was die Ports betrifft. Der eine schreibt Port 80, der nächjste Port xxx usw.

Aus den anderen Beiträgen funktionieren die Ports bei mir auch nicht.

Laut der Doku benutzt wekan den Port 8080:80 oder 3001:80
Bei dir weiß ich jetzt nicht genau was der Port 32445 - 32888 ist, ich vermute mal das ist dein lokaler Port im Docker für den Container Port 8080 / 3001
In der Root URL kann ich jeden Port eintragen, den ich möchte. Es ist irgendwie egal was dort steht, es läuft immer. Wichtig sind ja die externen Ports.
Ob ich an die Root URL ein /wekan hänge oder nicht, ist ihm auch egal.
Auzch hast du kein https in deiner URL

Reverse Proxy kann man auch nicht mit / erstellen, es gehen nur subdomains
 

Anhänge

  • wekan1.png
    wekan1.png
    28 KB · Aufrufe: 45
  • wekan2.png
    wekan2.png
    15,6 KB · Aufrufe: 39
  • reverse.png
    reverse.png
    17,8 KB · Aufrufe: 39

dolterfriek

Benutzer
Mitglied seit
29. Jan 2020
Beiträge
19
Punkte für Reaktionen
0
Punkte
1
Hallo,

die Ports 32445 / 32888 habe ich einfach eingetragen
Im Reverse Proxy musst Du natürlich
als Quelle HTTPS://_deine_dyndns:PORT eintragen also in meinem Falle:
HTTPS://_meinedyndns_:32888
Als Ziel:
H T T P://localhost:32445 (mein beispiel)

in Docker:
Umgebung HTTP: _deine_dyndns_/wekan

ja, der 3001er Port, der angeblich direktf ür HTTPS greifen soll, geht bei mir auch nicht...

hoffe, is bisschen übersichtlicher

Grüße
 

akoerber

Benutzer
Mitglied seit
31. Mrz 2017
Beiträge
127
Punkte für Reaktionen
1
Punkte
18
Danke. Habe es hinbekommen.
Auch das Setup für Mail funktioniert nun - zumindest für die Test-Mail im Admin Panel / Mail (vgl. https://www.synology-forum.de/threa...-e-mail-nutzer-hinzufuegen.113700/post-931205).

Wenn ich eine Einladungsmail versende, enthält diese aber nun einen Link mit der LOKALEN IP. Das nutzt Usern nicht immer.
Wie kann ich WEKAN unter DOCKER so einrichten, dass die dynamische IP in der Einladungsmail verwendet wird?
 

akoerber

Benutzer
Mitglied seit
31. Mrz 2017
Beiträge
127
Punkte für Reaktionen
1
Punkte
18
Offenkundig geht es, wenn man als ROOT_URL die dynamische Adresse verwendet.
 


 

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