Я создал образ докера из openjdk: 8-jdk-alpine, но когда я пытаюсь выполнить простые команды, я получаю следующие ошибки:
RUN bash
/bin/sh: bash: not found
RUN ./gradlew build
env: can't execute 'bash': No such file or directory
bash
docker
dockerfile
alpine
diugalde
источник
источник
docker run --rm -i -t alpine /bin/sh
Ответы:
В образе Alpine Docker по умолчанию не установлен bash. Вам нужно будет добавить следующие команды, чтобы получить
bash
:Если вы используете,
Alpine 3.3+
то вы можете просто сделатьсохранить размер изображения докера. (Спасибо комментарий от @sprkysnrky)
источник
apk upgrade
Не требуется.RUN /bin/sh
вместоRUN bin/bash
bash
конкретной функции.Попробуйте использовать
RUN /bin/sh
вместо Bash.источник
bash
добавляет около 4 МБ к размеруalpine:3.8
, примерно вдвое, но все еще далеко от 50 МБ.работал на меня.
источник
RUN apk add --no-cache bash
прямоДля установки bash вы можете сделать:
Если вы не хотите добавлять дополнительный размер к своему изображению, вы можете использовать его
ash
илиsh
поставляемый с Alpine.Ссылка: https://github.com/smebberson/docker-alpine/issues/43
источник