Ответ 1
Используйте useradd
вместо интерактивного adduser
, чтобы добавить пользователя.
RUN useradd -ms /bin/bash vault
Ниже команда не создаст пользователя.
USER vault
WORKDIR /usr/local/bin/vault
он будет использовать vault
user
см. Документация пользователя Dockerfile
В инструкции USER задается имя пользователя или UID для использования при запуске изображения и для любых инструкций RUN, CMD и ENTRYPOINT, которые следуют за ним в файле Docker.
ПРИМЕЧАНИЕ. Обеспечивает, что bash
является оболочкой по умолчанию.
Если оболочка по умолчанию /bin/sh
, вы можете сделать так:
RUN ln -sf /bin/bash /bin/sh
RUN useradd -ms /bin/bash vault