使用安装的卷创build后,Docker容器不能运行

我正在尝试使用从泊坞窗数据库中提取的图像。 不过,我需要从主机的数据使用一些加载到图像的程序。 我用这个创build了一个容器

sudo docker run --name="mdrap" -v "/home/ubuntu/profile/reads/SE:/usr/local/src/volume" sigenae/drap 

看来,一切正常,然后我开始容器

 sudo docker start mdrap 

但是当我检查正在运行的容器时,它并没有在那里列出,如果我尝试将容器加载到/ bin / bash,它告诉我容器没有运行。 我是一个docker的初学者,我只是试图用一个图像来运行所有需要的依赖关系的程序,我做错了什么?

docker start只是启动一个停止的容器。 docker run后没有必要 (但更多的是在docker **create** ,就像在文档中一样 )

只要主stream程正在运行,容器就会启动。
一旦主进程停止,容器停止。

容器的主要过程可以是:

  • ENTRYPOINT如果定义
  • CMD如果没有ENTRYPOINT和没有命令行参数
  • 命令行参数

在你的情况下,因为你没有任何命令行参数(在docker run命令的图像名称之后)并且图像只定义了一个CMD (= /bin/bash ),你的容器试图启动一个/bin/bash
但是 ,因为你没有使用--interactive/-i nor --tty/-t (同样在文档中 )启动容器,所以你的进程没有任何交互作用,并且停止(这个容器)。

所以你的解决scheme只是按照文档 :

 docker create --name drap --privileged -v /home/ubuntu/profile/reads/SE:/usr/local/src/volume -i -t sigenae/drap /bin/bash docker start drap docker exec -i -t drap /bin/bash 

甚至更简单:

 docker run --name drap --privileged -v /home/ubuntu/profile/reads/SE:/usr/local/src/volume -i -t sigenae/drap /bin/bash