mkdir не работает в файле Docker, но работает нормально при запуске вручную - PullRequest
0 голосов
/ 01 октября 2019

У меня есть файл Docker, который выглядит следующим образом:

# escape=`
FROM  mcr.microsoft.com/dotnet/core/aspnet:3.0-buster-slim
SHELL ["/bin/bash"]

RUN mkdir -p /usr/local/share/ca-certificates/myfolder

Когда я пытаюсь собрать его, я получаю следующую ошибку:

/ bin / bash: mkdir -p / usr / local / share / ca-Certificates / myfolder: Нет такого файла или каталога

Но если я запускаю экземпляр контейнера без этой команды, то это работает очень хорошо:

mkdir -p /usr/local/share/ca-certificates/myfolder

Это делает папку просто отлично.

Я тоже попробовал это:

RUN ["mkdir"] ["-p"] ["/usr/local/share/ca-certificates/myfolder"]

, но это дает следующую ошибку:

mkdir: отсутствует операнд
Попробуйте 'mkdir --help' для получения дополнительной информации.

Как я могу создать каталог в контейнере Linux из моего файла Docker?

Примечания:

  • Моя машина - Windows 10
  • Мой контейнер работает под управлением Debian 10

1 Ответ

0 голосов
/ 01 октября 2019

Оказывается, команда SHELL ["/bin/bash"] была неправильной. Когда я удаляю это, он работал нормально.

Удаление или замена на SHELL ["/bin/bash", "-c"], кажется, работает.

...