Я видел две различные методологии использования команды RUN
в Dockerfile
, которую я назову v1 и v2.
v1
Одна команда на строку
FROM ubuntu/latest
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update
RUN apt-get -y install php5-dev
RUN libcurl4-openssl-dev
...
v2
Несколько команд на строку
FROM ubuntu/latest
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && \
apt-get -y install \
php5-dev \
libcurl4-openssl-dev
...
Обе методологии имеют свои преимущества, самый очевидный подход к использованию кеширования. Какие еще причины могут использовать один подход над другим?
N.B. Я склоняюсь перед сообществом, если этот вопрос будет считаться слишком расплывчатым или открытым для мнения; тем не менее, я размещаю его здесь, потому что я ожидаю, что есть хорошие ситуации для группировки команд, а хорошие ситуации - для - и я хочу знать, что они собой представляют.