Задать вопрос
@Chheza

Нужно ли в Dockerfile прописывать конкретные версии пакетов?

Если мы откроем https://hub.docker.com/_/php, то в разделе «PHP Core Extensions» увидим:
RUN apt-get update && apt-get install -y \
		libfreetype6-dev \
		libjpeg62-turbo-dev \
		libpng-dev


Мы поставим пакеты, соберем контейнер и запустим - всё будет работать.
Через время какой-то пакет, например, libpng-dev, обновится и сломает обратную совместимость.
Мы соберем контейнер ещё раз - и он работать уже не будет, несмотря на то, что у нас старый, рабочий Dockerfile.

Нужно ли в таких случаях указывать конкретные версии пакетов, чтобы ставились именно они, и мы были уверены, что сборка всегда будет одинаковой и рабочей?

Если нет, то почему?
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@romaro
Вы на самом деле сами ответили на свой вопрос:
Через время какой-то пакет, например, libpng-dev, обновится и сломает обратную совместимость. Мы соберем контейнер ещё раз - и он работать уже не будет


Имхо, неуправляемое обновление плохо даже в dev-версии.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы