Docker Network via Brücke mit Ausenwelt verbinden?

Ja moin Leute,

Ich stellte hier schonmal eine Ähnliche Frage.

Da ich bei dieser nicht zur gewollten lösung gekommen bin habe ich mich nochmal Intensiv damit beschäftigt.

Wer jetzt nicht Nachsehen will welche Frage das war:

Ich habe einen NAS der gibt Lokal das verzeichnis /data frei

Durch Docker Swarm-Mode habe ich dann einen Docker Swarm mit jetzt insg. 10 physischen Servern aufgesetzt

Nun läuft in diesem Swarm ein Apache Server der auf das je Interne Verzeichnis /webserver zugreift

Das Freigegebene Verzeichnis des NAS, also /data, ist per --mount type=bind,source="/data",destination=/webserver in den Docker Service (bzw. die Parallellaufenden Docker Container) eingebunden.

(das Verzeichnis /data ist auf jedem PC per CIFS mit dem NAS verbunden)

So nun ist es so das es eine MGR-NODE gibt die alle Request´s annimmt und dann je nach lasst verteilt und auf die einzelnen PC´s (bis auf sich selbst) verteilt.

Soweit haut alles auch super hin und es kann auch sein das wenn ich zwei anfragen mache das Anfrage A von Server 1 und Anfrage B von Server 2 beantwortet wird.

Nun mein "Problem" in den Logfiles (die auf einen anderen ordner auf der NAS sind) taucht immer die Node-MGR-IP auf (also 10.0.0.2) und nicht die "externe" bzw. die wirklich zugreifende IP.

Ich möchte jedoch das wenn ich von extern mit der IP 123.124.125.234 zugreife das diese auch in den Logs auftaucht und nicht 10.0.0.2

Nun habe ich mich bisschen mit diesem Thema auseinandergestetzt und herausgefunden das das irgentwie mit dem von docker erstellten subnetz zu tun hat. Ich fand auch mehrere Anleitungen wie ich das umconfigurieren kann jedoch alle nur für nginx und nichts für apache2 etc.

Nun zur eigentlichen Frage wie kann ich es schaffen das die externe IP an das docker subnetwork weitergegeben wird. Ich meine für den Port gibt es ja -p 80:80 gibt es dann auch ein -ip : ? oder etwas in der Art? oder muss ich irgentwie ein eigenes Subnetz per Docker einrichten? oder wie geht das? wie gesagt ich habe 0,0 % ahnung da ich leider hier nicht durchsteige

Computer, Technik, Service, container, NAS, Technologie, Apache2, docker, Spiele und Gaming
1 Antwort
Problem mit Docker?

Problem mit Docker

und zwar haut bei mir der Befehl

RUN docker-php-ext-install mysqli && docker-php-ext-enable mysqli

nicht hin.

Ich erstelle ein Image über ein Dockerfile (docker build -t [name] .)

Das Image basierd auf debian:latest

Danach wird apt-get update & apt-get upgrade ausgeführt

Dann werden Komponenten installiert (sudo, apache2, php, cron, ...)

und wiederum danach werden die apache2 Konfigurierung angepasst das der Apache2-Server auf /webserver das DocumentRoot setzt

Soweit alles gut.

jetzt kann ich über den docker run befehl den parameter --mount hinzufügen und darüber ein externes Verzeichnis auf /webserver binden.

Bis hier her Funktioniert alles noch.

Jetzt wenn ich eine index.html aufrufe funktioniert das eine index.php funktioniert auch. Wenn ich jetzt jedoch in der .php Datei folgenden code Benutze(um auf MySql - Server zuzugreifen zu können):

      $mysqli = new mysqli("host_ip","bn","pw","tabelle");
      //echo mysqli_get_host_info($mysqli);
      if ($mysqli->connect_errno) {
          echo "Verbindung fehlgeschlagen: " . $mysqli->connect_error;
          return false;
      }else{
          return $mysqli;
      }

Kommt ein 500-ServerError.

Soweit ich es jetzt ergoogeln konnte muss ich zusätzlich den Port 3306(MySql-Port) Exposen und zusätzlich mit -p 3306:3306 in den docker run befehl einbauen.

Außerdem muss man antscheinend mit

RUN docker-php-ext-install mysqli && docker-php-ext-enable mysqli

Das MySqli modul installieren & aktivieren.

Hier ist auch schon das Problem:

Wenn ich mit oben genannten befehl mein Image aus dem Dockerfile erstellen möchte kommt (wenn er an der Stelle mit "RUN docker-php..." ankommt):

RUN docker-php-ext-install mysqli
 ---> Running in bce06404a5ca
/bin/sh: 1: docker-php-ext-install: not found
The command '/bin/sh -c docker-php-ext-install mysqli' returned a non-zero code: 127

Und jetzt meine Frage wie kann ich diesen fehler Beheben, ich weiß leider nicht mehr weiter!

Für die vollständigkeit hier noch der docker run befehl(den ich benutze wenn ich das Funktionierende Image ohne "RUN docker-php-..." nutze):

docker run --name webserver \
-p 80:80 \
-p 3306:3306 \
--mount type=bind,source="/lokaler/pfad",destination=/webserver [name_des_images]
Computer, Technik, Apache, container, Image, MySQL, PHP, Port, Technologie, docker, Spiele und Gaming
2 Antworten
Minecraft Server in Docker-Container : Fehler beim Port?

Hallo,

Ich habe mir gestern ein Docker-Image zusammengeschustert. Welches wie folgt aussieht (bzw das Dockerfile des Images):

FROM openjdk:8u212-jre-alpine
RUN mkdir data
WORKDIR /data
VOLUME /data
EXPOSE 27777
CMD java -Xmx2048M -jar server.jar

Soweit sogut, ich habe eine Volume angelgt, dort die Server.jar, Eula.txt und server.properites reingelegt, und möchte nun den Docker Container starten:

Docker run -v /var/lib/docker/volumes/test/_data:/data -p 25565:27777 --name NAME imagename

Daraufhin startet der Container auch, und gibt den Normalen start-vorgang eines MC servers aus: Und dann kommt der Fehler:

Loading libraries, please wait...
[10:05:44 INFO]: Starting minecraft server version 1.8
[10:05:44 INFO]: Loading properties
[10:05:44 INFO]: Default game type: SURVIVAL
[10:05:44 INFO]: Generating keypair
[10:05:44 INFO]: Starting Minecraft server on :27777 [10:05:45 WARN]:  FAILED TO BIND TO PORT! [10:05:45 WARN]: The exception was: java.lang.ArithmeticException: / by zero [10:05:45 WARN]: Perhaps a server is already running on that port? [10:05:45 INFO]: Stopping server 

Mir ist klar das der Fehler meistens dann ausgegebn wird, wenn der Port belegt ist ect --> Jeoch habe ich schon sämmtlioche dinge auspobiert:- Ich habe mehrmals Intenren-docker-Port / Host-port geändert, - in der server.properties den Port geändert, - in der server.properties die ip geändert (127.0.0.1/172.17.0.2/185.239.xxx.xx)
- beim start des contasiners :

docker run --net host -v [...]

versucht

Aber woran liegt es jetzt? Auf gitub findet man ähnliche docker-files die im grundprinzip dsas selbe machen wie mein Image, und die funktionnieren ebensowenig. Liegt es an einer fehl-konfiguration meines vServers ? Netzwerkkonfiguration?

Brauche ich eine Proxy ode rirgedwas an der Firewall?

LG Danke im Vorraus ;D

ps: auch das deachtivieren der firewall(s) half nichts ...

Server, Computer, Technik, Netzwerk, Minecraft, container, Minecraft Server, Technologie, docker, Spiele und Gaming
3 Antworten
Mir sind jetzt Ruckler bei .mp4 (H.264 / AAC) 25fps aufgefallen, den Container in .mkv gewechselt (XMedia Recode) & Ruckler weg, jetzt unspulbar, warum?

CONTAINER: .mp4

VIDEO: MPEC-4 AVC / H.264 25.00 Hz, Progressiv, YUV 4:2:0 Planar 12bppAUDIO: English AAC 128 Kbps 48000 Hz 2 Kanäle

Problem bei BLu Ray Player egal ob gestreamt PC zu Blu Ray Player oder Stick direkt in Blu Ray Player oder auf Blu Ray gebrannt (Datendisk).

Neulich bemerkt, dass es leichte aber nervige Ruckler bei Kamera-Schwenks gibt, z.B. wenn sich im Hintergrund ein Schriftzug befindet - wird halt nicht 100%ig flüssig wiedergegeben. Und nein, es handelt sich nicht um die üblichen 24 oder 25fps Ruckler bei zu schnellen Schwenks, wenn dies so wäre, dürfte sich nichts verändern, wenn ich den Container wechsel (XMedia Recode Video & Audio kopieren & anderen Container auswählen, wird also nicht neu encodiert). Meine Blu Ray Player soll alles von mir aufgezählte problemlos abspielen.

Woran liegt das? Was ist bei .mkv anders als bei .mp4? Und warum ist mit .mkv jetzt aber leider nichts mehr spulbar? Sprung an eine Stelle auch nicht möglich.

Habe jetzt das Problem, dass ich vor der Wahl stehe entweder super spulen können oder aber das Video flüssig schauen können ohne Spulmöglichkeit! Ich verstehe immer noch nicht warum es in .mkv jetzt flüssiger läuft?

Einstellungen waren alle immer gleich. Handelt sich um mit Action exportierte Dateien!

Liegt es eventuell am HDMI-Kabel, da es von PC direkt zum TV gestreamt sowohl in .mp4 als auch in .mkv flüssig läuft? Also das mein Blu Ray Player .mkv besser übers HDMI-Kabel befördert als .mp4?

Vielen Dank schon mal.

Will keinem Angst machen, aber checkt mal eure Videos, ich habe es auch Monate nicht bemerkt!

Computer, TV, Technik, Multimedia, streaming, Blu-ray, container, FPS, HDMI, Technologie, Codec, Spiele und Gaming
1 Antwort

Meistgelesene Fragen zum Thema Container