Docker ENTRYPOINT 不执行命令/tox

Docker ENTRYPOINT doesn't execute command/ tox

谁能告诉我为什么我不能 运行 在 ENTRYPOINT 中执行命令。 我的 Docker 文件看起来像

.....
.....  
ENTRYPOINT ["bash -c tox -e docker-server"]

但是当我执行 Dcoker 运行 时,出现此错误

Docker: Error response from daemon: OCI runtime create failed: 
container_linux.go:348: starting container process caused "exec: \"bash -c 
tox -e docker-server\": executable file not found in $PATH": unknown.

然后我将命令更改为 ENTRYPOINT ["sh ls -l"],这次我也遇到了任何错误

Docker: Error response from daemon: OCI runtime create failed: 
container_linux.go:348: starting container process caused "exec: \"sh ls - 
l\": executable file not found in $PATH": unknown.

您需要在 ENTRYPOINT 数组的单独元素中指定命令行中的每个单词,例如:

ENTRYPOINT ["bash", "-c", "tox", "-e", "docker-server"]

否则,docker 将尝试查找名为 "bash -c tox -e docker-server" 的可执行文件,当然它不存在。