mkdir 在 docker 文件中失败,但在 运行 手动时工作正常

mkdir fails in docker file but works fine when run manually

我有一个 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: No such file or directory

但是,如果我在没有该命令的情况下启动容器实例,那么它运行得很好:

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

它使文件夹正常。

我也试过这个:

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

但是会出现以下错误:

mkdir: missing operand
Try 'mkdir --help' for more information.

如何从我的 docker 文件在 Linux 容器中创建目录?

备注:

原来 SHELL ["/bin/bash"] 命令是错误的。当我删除它时它工作正常。

删除它或用 SHELL ["/bin/bash", "-c"] 替换它似乎有效。