docker-compose up vs docker-compose up --build vs docker-compose build --no-cache

130

Я не мог понять, в чем разница между ними.

  • docker-compose up

  • docker-compose up --build

  • docker-compose build --no-cache

Есть ли команда upбез кеша?

Тоши
источник

Ответы:

225

Следующее только создает образы, но не запускает контейнеры:

  • docker-compose build

Следующее создает образы, если образы не существуют, и запускает контейнеры:

  • docker-compose up

Если вы добавите этот --buildпараметр, он будет вынужден создавать образы, даже если они не нужны:

  • docker-compose up --build

Следующее пропускает процесс построения образа:

  • docker-compose up --no-build

Если изображения не созданы заранее, это не сработает.

Эта --no-cacheопция отключает кеш сборки Docker в процессе создания образа. Это используется для кэширования каждого слоя в Dockerfile и для ускорения создания образа с повторным использованием слоев (~ строки Dockerfile), ранее созданных для других идентичных образов.

Zuazo
источник
1
Что делает docker-compose up -d?
Hiroyuki Nuri
16
Это запускает контейнеры в автономном режиме, поэтому они не будут отображать какой-либо вывод в консоли и запускать их в фоновом режиме.
stevejgordon
1
Обратите внимание, что некоторые параметры (например, -d) for docker-compose up -dотсутствуют в документации только для docker-compose. Вы должны посмотреть на docs.docker.com/compose/reference/up
Simon_Weaver