Это самый простой и простой способ установки пакетов в образ контейнера. Альтернативой является сборка пакетов из исходного кода, что требует гораздо большей ручной настройки!
Существуют другие образы, которые можно свободно извлекать из реестров (например, dockerhub ), которые могут включать пакеты, которыеВы уже хотите уже в образе. Тогда все, что вам нужно сделать, это потянуть изображение и начать работать с ним.
Что касается скорости сборки, помните, что конкретные инструкции по сборке (т. Е. Каждая строка в Dockerfile) для образа обычно выполняются только тогда, когда:
- Это первый раз, когда выполняется инструкция,
- Что-то в инструкции по сборке изменяется (например, вы добавляете новый пакет в список)
- Процесс сборки запускается с флагом
--no-cache
, который всегда строит весь образ с нуля. ,
Так что, как только вы построите образ один раз, любые строки в Dockerfile, которые не изменились, больше не будут выполняться. Процесс сборки начинается с последней неизменной инструкции по сборке.