Docker 附加卷时设置入口点 -v
Docker setting entrypoint when attaching volume -v
以前,我能够在我的容器中将一个文件夹作为 volume 附加到我的容器中,如下所示:
docker run -it --rm -v /Users/me/Desktop/Jupyter:/home/jovyan/work -p 8888:8888 jupyter/all-spark-notebook
然而,当我运行...
docker run -it -v /Users/me/Desktop/nfscripts:/usr nextflow/nextflow /bin/bash
...我得到以下 错误:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "exec: \"/usr/local/bin/entry.sh\": stat /usr/local/bin/entry.sh: no such file or directory": unknown.
当我启动交互式会话并检查目录时,我得到了基础 /
并且我可以看到 usr
目录。
$ docker run -it nextflow/nextflow /bin/bash
$ pwd
/
$ ls
bin dev etc home lib media mnt opt proc root run sbin srv sys tmp usr var
我从 Cmd 中认出了 /usr/local/bin/entry.sh
,它肯定存在,因为我可以捕捉到它。
"Cmd": [
"/bin/sh",
"-c",
"#(nop) ",
"ENTRYPOINT [\"/usr/local/bin/entry.sh\"]"
],
我不能挂载 :/usr
因为它在入口点的路径中吗?
您需要挂载指定的入口点,该入口点可以不同于您启动交互式会话的目录:
docker run -it --rm -v /Users/me/Desktop/nfscripts:/usr/local/bin/entry nextflow/nextflow /bin/bash
以前,我能够在我的容器中将一个文件夹作为 volume 附加到我的容器中,如下所示:
docker run -it --rm -v /Users/me/Desktop/Jupyter:/home/jovyan/work -p 8888:8888 jupyter/all-spark-notebook
然而,当我运行...
docker run -it -v /Users/me/Desktop/nfscripts:/usr nextflow/nextflow /bin/bash
...我得到以下 错误:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "exec: \"/usr/local/bin/entry.sh\": stat /usr/local/bin/entry.sh: no such file or directory": unknown.
当我启动交互式会话并检查目录时,我得到了基础 /
并且我可以看到 usr
目录。
$ docker run -it nextflow/nextflow /bin/bash
$ pwd
/
$ ls
bin dev etc home lib media mnt opt proc root run sbin srv sys tmp usr var
我从 Cmd 中认出了 /usr/local/bin/entry.sh
,它肯定存在,因为我可以捕捉到它。
"Cmd": [
"/bin/sh",
"-c",
"#(nop) ",
"ENTRYPOINT [\"/usr/local/bin/entry.sh\"]"
],
我不能挂载 :/usr
因为它在入口点的路径中吗?
您需要挂载指定的入口点,该入口点可以不同于您启动交互式会话的目录:
docker run -it --rm -v /Users/me/Desktop/nfscripts:/usr/local/bin/entry nextflow/nextflow /bin/bash