我正在使用无业游民,所以容器在虚拟机内。以下是我的shell配置:
#!/bin/bash
CONFDIR='/apps/hf/hf-container-scripts'
REGISTRY="tutum.co/xxx"
VER_APP="0.1"
NAME=app
cd $CONFDIR
sudo docker login -u xxx -p xxx -e [email protected] tutum.co
sudo docker build -t $REGISTRY/$NAME:$VER_APP .
sudo docker run -it --rm -v /apps/hf:/hf $REGISTRY/$NAME:$VER_APP
一切运行正常,图像已构建。但是,上面的同步命令(最后一个)似乎不起作用。我 checkin 了容器,
/hf
目录存在并且其中包含文件。还有一个问题是,如果我手动执行同步命令,它会成功,但是如果我使用
ls /hf
,则只能从主机看到文件。似乎docker清空了/hf
并将主机中的文件放入其中。我希望以其他方式或更好的方式将它们合并。 最佳答案
是的,恐怕这就是卷的工作方式。基本上,一卷说,“不要将容器文件系统用于此目录,而应从主机使用此目录”。
如果要将文件从容器中复制到主机上,则可以使用docker cp
命令。
如果您告诉我们您要做什么,也许我们可以建议一个更好的选择。