сборщик сокетов

Используя Compose, если я запустил docker-compose build, она восстановит все контейнеры:

> 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

Ответ 2

Вы делаете это вручную, используя тег изображения. Подробнее здесь.

Ответ 3

если вы хотите запустить определенную службу внутри своего файла для создания докеры, вы можете сделать это так же, как предлагалось @dnephin, например

$ docker-compose.exe up -d service_name

Предположим, что ваш файл docker-compose.yml похож на

version: '3'
services:
  service_1:
      .....
  service_2:
      .....

! Для этого служба, которую вы хотите вызвать, не должна зависеть от других сервисов.