Transmission-daemon innerhalb Docker-container mit OpenVPN/privateinternetaccess.com-port-forwarding
Ich habe experimentiert mit dem Umzug meiner seedbox in einen Docker-container und ich denke, ich bin gegen eine Huhn/ei-problem:
Den aktuellen seedbox setup hat OpenVPN läuft (alle internet-geht durch das VPN) über privateinternetaccess.com. Ich habe ein Skript ( https://github.com/firecat53/pia_transmission_monitor ), die Kontrollen mit PIA für den zugewiesenen port weitergeleitet und dann updates transmission-daemon entsprechend mit den Anschluss-und bind-Adresse.
Das problem ist, dass die zugewiesene port weitergeleitet wird, überprüft stündlich, und es kann sich jederzeit ändern...und ich muss wissen, der port vor Ausführung des Docker-container, damit ich weiß, welche ports zu Durchlaufen, um/aus dem container. Ich war die beabsichtigen, führen Sie OpenVPN im inneren des Behälters so gut, aber ohne im Voraus zu wissen, welcher port zuweisen an den container-ich bin nicht sicher, dies ist zur Arbeit zu gehen.
Einen sehr hackish Lösung könnte das ausführen von OpenVPN und anderen Docker-daemon in einem container, führen Sie dann die übertragung Behälter im inneren des OpenVPN-container. Dies scheint waay zu Komplex, aber so dass ich noch nicht wirklich versucht noch.
Bin ich etwas fehlt offensichtlich wirklich hier? Irgendwelche anderen Ideen?
Dank!
Scott
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich endlich geschafft, Transmission-daemon laufen in den Docker-container durch eine OpenVPN Verbindung zu Privateinternetaccess.com.
Hier ist das Dockerfile und die verschiedenen Konfigurations-Dateien und-Skripten benötigt, um diese Arbeit zu machen. Ich bin offen für alle Vereinfachungen und/oder Alternative Möglichkeiten, dies zu erreichen! Einige Hinweise:
OpenVPN erfordert die Ausführung des Containers mit der Option --privileged-flag, um das tun0 Verbindung.
Konnte ich nur machen, damit es funktioniert direkt mit Rohrleitungen zusammen mit einer bridge auf dem host zu geben, der container seine eigene IP-Adresse im Netzwerk.
Würde es helfen, um die Docker-port zugewiesen mit
-p <publicport>:<containerport>
?E. g., unter der Annahme, dass die übertragung lauscht auf port 10000 im inneren des Containers, könnten Sie sagen, das Andockfenster "hey, freigelegt, die auf port 1234, oder?" by doing
docker run -p 1234:10000 …
Ich würde mich über eine generische socket-proxy, könnte das kopieren aller Verkehr zu/von den dynamisch zugewiesenen port, dass Sie zu einem statisch verwenden. E. g.
Natürlich kann man dies eleganter, aber das ist das Allgemeine Konzept
Etwas lohnt sich, über einige der in die gleiche Richtung, allerdings fehlt der vpn-Teil, das ist schön, btw. Wenn die Zyklen, die entstehen, ich denke, jemand wird es hinzufügen.
https://github.com/Ohge/Docker-TransHeadCouchRage