OpenVPNサーバーでいくつかのプライベートIPアドレスを公開していますが、Docker Swarmサービスからそれらのアドレスにアクセスしたいのですが。
理想的には、VPNが不要な環境にイメージが展開されることが予想されるため、コンテナの「内部」にOpenVPNクライアントが存在しないことが望まれます。
今まで試したこと
dperson / openvpn-clientイメージを使用して、コンテナーをVPNに正常に接続しました。
--net=container:my-vpn-client
フラグを使用して、そのコンテナをネットワークとして使用する別のコンテナを正常に起動しました。
今、私は自分のプライベートIPアドレスにアクセスするドッカーサービスを設定しようとしていますが、私が見つけたのは:
- サービスでopenVPNクライアントを実行できません
cap-add: NET_ADMIN
。この問題を議論するDockerには未解決の問題がありますが、それらは未解決のままです。 - 私は、openVPNクライアントコンテナをswarmクラスタの「横」で実行させることができると考えましたが、
network_mode: "container:my-vpn-client"
サポートされていないため使用できません。それ自体がサービスでなくても群がります。 - 接続可能なネットワーク(ブリッジ/オーバーレイ)を作成して、OpenVPNクライアントコンテナをそのネットワークに挿入し、そのネットワークの他のメンバーがそのパイプを通過することを期待しました...がっかりしました。
だからここに私は、どんなアイデアですか?
PSそれが役立つ場合、これは主に、swarm init> stack deploy> run tests> swarm leaveのように、単一のドッカーマシンでサービスをswarmモードで実行する自動テストを設定することです。だからそのための「ハック」がある場合...私は興味があるかもしれません;)
ccr
ます。すべてのTCP / IPルーティングと同様に、「現状のままtraceroute
、tcpdump
またはWireShark があなたの親友です。」