Редактирование файлов из файла dockerfile

Мне нужно добавить несколько строк в /etc/sysctl.conf в образ докеры. Есть ли идемпотентный способ сделать это через файл докеров, а не редактировать вручную и использовать подход фиксации докеров?

Ответы

Ответ 1

Я использовал бы следующий подход в Dockerfile

RUN   echo "Some line to add to a file" >> /etc/sysctl.conf

Это должно сделать трюк. Если вы хотите заменить некоторые символы или подобное, вы можете работать с sed с помощью, например, следующее:

RUN   sed -i "s|some-original-string|the-new-string |g" /etc/sysctl.conf

Однако, если ваша проблема заключается в простом настройке параметров "bite" этот вопрос может помочь.

Ответ 2

sed работает довольно хорошо, чтобы заменить материал, если вам нужно добавить, вы можете дважды перенаправить пользователя

sed -i s/origin text/new text/ /etc/sysctl.conf
bash -c 'echo hello world >> /etc/sysctl.conf