Docker устанавливает точку входа при подключении тома -v - PullRequest
0 голосов
/ 16 мая 2019

Ранее я мог прикрепить папку на своем рабочем столе в виде тома в своем контейнере следующим образом:

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

Я узнаю /usr/local/bin/entry.sh из Cmd, и он определенно существует, потому что я могу его отследить.

            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "ENTRYPOINT [\"/usr/local/bin/entry.sh\"]"
            ],

Мне не разрешено монтировать :/usr потому что он находится на пути к точке входа?

1 Ответ

0 голосов
/ 29 мая 2019

Вам необходимо смонтировать указанную точку входа, которая может отличаться от каталога, в котором вы запускаете интерактивный сеанс, в:

docker run -it --rm -v /Users/me/Desktop/nfscripts:/usr/local/bin/entry nextflow/nextflow /bin/bash
...