如何修复docker文件中的“ sh:0:无法打开start.sh”?

Ale*_*lex 6 shell selenium docker

我创建了一个包含以下CMD的docker映像:

CMD ["sh", "start.sh"]
Run Code Online (Sandbox Code Playgroud)

当我运行docker镜像时,我在 Makefile

docker run --rm -v ${PWD}:/selenium $(DOCKER_IMAGE)
Run Code Online (Sandbox Code Playgroud)

它将文件从当前(host-)目录复制到docker的/selenium文件夹中。这些文件包括用于硒测试的文件以及文件start.sh。但是在容器启动后,我立即收到错误消息

"sh: 0: Can't open start.sh"
Run Code Online (Sandbox Code Playgroud)

可能在命令运行后将主机卷安装在docker内部吗?还有什么可以解释此错误的信息,以及如何解决该错误?

也许有一种方法可以在docker内部运行多个命令以查看发生了什么事情?喜欢

CMD ["ls", ";", "pwd", ";", "sh", "start.sh"]
Run Code Online (Sandbox Code Playgroud)

更新资料

当我使用以下命令时,我的Dockerfile

CMD ["ls"]
Run Code Online (Sandbox Code Playgroud)

我得到错误

ls: cannot open directory '.': Permission denied
Run Code Online (Sandbox Code Playgroud)

额外的信息

  • Docker版本1.12.6
  • 入口点: WORKDIR /work

小智 -5

  1. 使用 检查权限ls -l
  2. sudo chmod 777 file_name第777章
  3. 对您可能找到的其他文件重复此操作。