Compose: docker-インタラクティブモードを構成します

作成日 2016年03月05日  ·  4コメント  ·  ソース: docker/compose

Dockerfileにこれがあります:

...
CMD bash on-start.sh

これを使用して実行でき、必要に応じてインタラクティブシェルを取得できます。

$ docker run -it imagename
$ _

ただし、これを行うと機能しません。

$ docker-compose up
...
exited with code 0

これを行うと、それも機能しますが、依存サービスは開始されません。

$ docker-compose run myservice 
$ _

私のバージョン:

$ docker --version
Docker version 1.10.0, build 590d5108
$ docker-compose --version
docker-compose version 1.6.0, build d99cad6
kinquestion

最も参考になるコメント

おそらく、作成ファイルでstdin_open:trueを使用することをお勧めします。

全てのコメント4件

おそらく、作成ファイルでstdin_open:trueを使用することをお勧めします。

それは予想される動作です。 upはインタラクティブではありません。 複数のコンテナーを開始できるため、複数のコンテナーに対してstdinを開いている単一の端末を使用することはできません。

runはあなたが望むことをするはずです。 depends_onを使用すると、Compose 1.6.2(compose 1.6.1でバグが修正されました)の時点で依存関係が開始されるため、アップグレードも必要になります。

@dnephin
ダニエル、私はこのトピックについてのあなたのメモに感謝しなければなりません。 ノードサーバーでコンテナをインタラクティブモードで機能させるのに2日間苦労しましたが、バックエンドのターミナルからデータを入力する必要もあります。 あなたのメモの文言は私に私の問題を別の方向から見るようにさせました。 Docker構成の詳細(runメソッドを含む)をゆっくりと読むことは、私にとって本当に役に立ちました。 どうもありがとう。

docker-compose環境で実行されているPythonデバッガーpdbにインタラクティブにアクセスしたかったのです。 TIL docker attach myservice

このページは役に立ちましたか?
0 / 5 - 0 評価