Composeを使用してdocker-compose build
を実行すると、allコンテナーが再構築されます。
> docker-compose build
Building elasticsearch
Step 1 : FROM elasticsearch:2.1
---> a05cc7ed3f32
Step 2 : RUN /usr/share/elasticsearch/bin/plugin install analysis-phonetic
---> Using cache
---> ec07bbdb8a18
Successfully built ec07bbdb8a18
Building search
Step 1 : FROM php:5.5.28-fpm
---> fcd24d1058c0
...
キャッシュを使用して再構築する場合でも、これには時間がかかります。だから私の質問は:
特定のコンテナを1つだけ再構築しますか?する方法はありますか?
はい、サービスの名前を使用します:
docker-compose build elasticsearch
docker-composeファイル内で特定のサービスを実行する場合は、@ dnephinが提案した方法と同じ方法で実行できます。
$ docker-compose.exe up -d service_name
Docker-compose.ymlファイルが次のようなものであるとします
version: '3'
services:
service_1:
.....
service_2:
.....
!それが機能するためには、呼び出したいサービスが他のサービスに依存するべきではありません。
docker-compose up -d --no-deps --build <service_name>
画像タグを使用して手動で行う必要があります。詳細 こちら 。