我有两个容器,一个设置为数据卷,我可以进入数据容器内部并浏览从网络共享挂载的文件,而不会出现任何问题。
当我转到带有已安装卷的文件夹时,在第二个 docker 实例上,该文件夹存在,但所有应该存在的文件和目录都不可见。
这曾经有效,所以我只能假设它是由于 docker 1.9 我在 linux 和 mac 机器上看到的。
关于原因的任何想法?这是一个错误还是我可以调查的其他问题?
检查的输出。
"Volumes": {
"/mnt/shared_app_data": {},
"/srv/shared_app_data": {}
},
"Mounts": [
{
"Name": "241d3e495f312c79abbeaa9495fa3b32110e9dca8442291d248cfbc5acca5b53",
"Source": "/var/lib/docker/volumes/241d3e495f312c79abbeaa9495fa3b32110e9dca8442291d248cfbc5acca5b53/_data",
"Destination": "/mnt/shared_app_data",
"Driver": "local",
"Mode": "",
"RW": true
},
{
"Name": "061f16c066b59f31baac450d0d97043d1fcdceb4ceb746515586e95d26c91b57",
"Source": "/var/lib/docker/volumes/061f16c066b59f31baac450d0d97043d1fcdceb4ceb746515586e95d26c91b57/_data",
"Destination": "/srv/shared_app_data",
"Driver": "local",
"Mode": "",
"RW": true
}
],
文件以这种方式安装在docker文件中
RUN echo '/srv/path ipaddress/255.255.255.0(rw,no_root_squash,subtree_check,fsid=0)' >> /etc/exports
RUN echo 'ipaddress:/srv/path /srv/shared_app_data nfs defaults 0 0' >> /etc/fstab
RUN echo 'ipaddress:/srv/path /mnt/shared_app_data nfs defaults 0 0' >> /etc/fstab
然后当容器启动时它运行。
service rpcbind start
mount -a