![](/img/trans.png)
[英]Running docker on Ubuntu: mounted host volume is not writable from container
[英]Mounted docker volume to host directory contains only files from the last container
我正在启动多个链接的容器。 所有容器都将主机目录/ var / log / tipsi /挂载到相同的内部目录中。 我只能在最后一个容器中的/ var / log / tipsi中看到文件的问题:
我正在使用图启动容器。 这是使用的配置:
solr:
build: ../tipsi_solr/
volumes:
- /var/log/tipsi:/var/log/tipsi
- /home/docker/code/tipsi/solr/collection1/data
erl:
build: ../tipsi_erl/
volumes:
- /var/log/tipsi:/var/log/tipsi
web:
build: .
volumes:
- /var/log/tipsi:/var/log/tipsi
- /etc/cert:/etc/cert
ports:
- "443:443"
- "80:80"
links:
- solr:tipsi-solr.local
- erl:tipsi-erl.local
有趣的是-lsof显示了tipi_erl pid缺少的文件(在主机上启动):
prompt:~$ sudo lsof -p 12717
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
beam.smp 12717 root 12w REG 252,0 0 9323763 /var/log/tipsi/stacked_cache_error.log
beam.smp 12717 root 13w REG 252,0 739192 9323765 /var/log/tipsi/stacked_cache_debug.log
但是其他应用程序无法访问它们:
ls /var/log/tipsi/stacked_cache_debug.log 22:35:29
ls: cannot access /var/log/tipsi/stacked_cache_debug.log: No such file or directory
另外,我尝试为所有容器在Dockerfile中指定和删除VOLUME参数,但没有任何运气。 为什么不显示这些文件的任何想法?
我相信您正在访问https://github.com/docker/fig/issues/447
如果在某一时刻将VOLUME
添加到Dockerfile,则在重新创建时将不断获取该卷的内容。
您应该使用fig rm --force
清除旧容器,然后再开始工作并使用主机卷。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.