2017-04-05 18 views
0

私は、コンテナでテストを実行するために使用するドッカー作成オーバーライドファイルを持っています。私は別のコマンドでノードサーバを起動したいと思っています - nyc node server.jsdocker-composeは、startコマンドを使用してコマンドを無効にしません。

node: 
    command: nyc node server.js 

しかし、決して私がdocker-compose -f docker-compose.yml -f docker-compose.coverage.yml start nodeを行うときにコマンドを上書きするようだ:私はそうのような通常のコンファイルを上書きしますドッカ-compose.coverage.ymlファイルを持っています。 docker-compose runを使用すると、コマンドは無効になりますが、サービスは終了します。スタートを使ってコマンドをオーバーライドしない理由を知っている人はいますか?

+0

を?ちょうど勘が... –

+0

ありがとう、私はそれを試してみます –

+0

それは働いた!ありがとう。 –

答えて

1

docker-compose startを既存の、が停止コンテナを起動します。既存のコンテナにはすでに焼き付けられたコマンドがあり、変更することはできません。

あなたがしたいのは、docker-compose upです。これにより、docker-compose.ymlの変更が検索され、変更が必要な場合は、新しいオプションでコンテナが再作成され、起動または再起動されます。

ですから、このような何かしたい:私はCMDが構築された容器の一部であるので、それはそれを上書きすることはできませんことを考えていますが、実行には関係なく、CMDのコンテナ内の別々のコマンドを実行している

docker-compose -f docker-compose.yml -f docker-compose.coverage.yml up -d node 
関連する問題