使用安装的卷创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