docker集装箱没有安装数据量
我有一个本地维护的Docker镜像,由于某些原因,它没有在容器中安装本地数据卷。
docker run -d -v /mnt/melissadata:/usr/local/tomcat/appconf -p 7070:7070 -p 80:8080 --restart on-failure:3 --name addrgeo imagename
在我的本地数据卷上,我有一些服务需要的文件,但无法find它们。
我知道卷被安装。
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvdi 202:128 0 10G 0 disk /mnt/melissadata
看来,Docker容器可以看到卷…
$ docker inspect ... "Mounts": [ { "Source": "/mnt/melissadata", "Destination": "/usr/local/tomcat/appconf", "Mode": "", "RW": true, "Propagation": "rprivate" } ],
findmnt
返回:
$ sudo findmnt -o TARGET,PROPAGATION /mnt/melissadata TARGET PROPAGATION /mnt/melissadata private
有什么想法吗?
发生这种情况的原因是因为Docker守护进程使用devicemapper来devicemapper来备份Docker的图层存储。 如果在Docker守护进程启动之后挂载了卷,那么Docker不知道它存在。 Docker守护进程的重新启动修复了它。
sudo service docker restart