In Linux we trust!

debconf-utils: применение в Docker

Если Dockerfile идет от Ubuntu или Debian, то там обязательно должна присутствовать такая строчка:

ENV DEBIAN_FRONTEND noninteractive

Она отключает интерактивный режим APT. Но что если вам хочется задать некие параметры конфигурации во время установки пакета? Например, имя сервера, которое потом долго искать в конфигурационных файлах. Для этих целей есть debconf-utils:

# apt-get install debconf-utils

При уже готовой конфигурации выполняем (для примера взят postfix):

# debconf-get-selections | grep -P 'procmail|postfix' | grep -v '^#' \
>   | grep -P '\S+$' >postfix.conf

Осталось этот файл пробросить в Docker:

COPY postfix.conf /tmp/postfix.conf
RUN debconf-set-selections /tmp/postfix.conf && rm -f /tmp/postfix.conf

Эти 2 инструкции должны идти ДО установки соответствующего пакета.

На этом все! Счастливо!