2017-03-17 10 views
0

私はホストごとに数十のコンテナで構成されるプロジェクトを持っています。これまでは、ブートストラップでVM上のコンテナを生成するためにSSH/Anabilitiesを使用していましたが、今は必要に応じてコンテナを起動するために各ホストでデーモンを実行したいと思います。特権付きDockerコンテナを使用して、ホスト上の他のコンテナを起動できますか?

デーモンを特権付きのコンテナで実行させることができます(セキュリティは問題ではありません)、ホストDockerデーモンと通信して新しいコンテナを実行することができれば嬉しいです(以下のスキーマを参照) 。これは非ハック的な方法で可能ですか、あるいはDockerは、その基盤となるDockerデーモンと対話するコンテナを完全に禁止していますか?

enter image description here

これが不可能な場合は、プログラムでドッキングウィンドウコンテナを起動するためのお好みの方法を教えてできますか?事前に感謝:)

答えて

3

私は特権のあるコンテナを多用していませんが、私はあなたが提案するものがうまくいくと思います。しかし、別の一般的な解決策は、ドッカーソケットを容器に取り付けることである。それはあなたがしようとしていることを達成するでしょう。あなたはこの単純なgoogle searchでそれに対する勧告の大きさから見ることができるように

docker run -v /var/run/docker.sock:/var/run/docker.sock <image> <cmd>

これはお勧めしません。しかし、セキュリティについて心配していないので、大丈夫かもしれません。

+1

これと、勝利のためのAPIドキュメント。 https://docs.docker.com/engine/api/ – user2105103

+0

ありがとうございます。完璧に見えます。セキュリティについて、私はホスト上のDockerを制御できるデーモンが、Dockerソケットが公開されているコンテナと同じルートであると推測します。 –

関連する問題