解决docker通过volumes挂载文件,宿主机修改后容器内不同步,重启服务才能同步

将文件的权限改为777,即chmod 777 filename

详细解释在该文章:
https://huaweicloud.csdn.net/633114e5d3efff3090b51a5a.html

说明:

这是由于linux系统文件挂载机制导致的。

docker通过volumes挂载文件到容器中,有以下两种方式:

1、挂载目录

2、挂载具体文件:并不是挂载了某个文件的路径,而是挂载了对应的文件,即挂载了linux指定的inode文件。

当使用vim之类的编辑器进行保存时,它不是直接保存文件,而是采用了备份、替换的策略。就是编辑时,创建了一个新文件,在保存的时候把备份文件替换为源文件,这个时候文件的inode就发生了变化,而原来indode对应的文件其实并没有修改,也就是容器内的文件没有变化。当重启容器的时候,会挂载新的inode.

当把文件的权限修改为777之后,vim的时候inode的值不会改变。

相关推荐
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.26 分钟前
Haproxy会话保持:基于Cookie优化
运维·负载均衡
学习3人组1 小时前
Docker 容器内文件↔本地双向复制备份
运维·docker·容器
crownyouyou1 小时前
Ubuntu输入法使用回车键后字符间距异常的问题
linux·运维·ubuntu
济6171 小时前
linux 系统移植(第十七期)---Linux 内核移植(5)-- 修改网络驱动(2)--- Ubuntu20.04
linux·运维·网络
街灯L2 小时前
【kylin-Linux】Flash兼容插件包安装
大数据·linux·运维·kylin
Howrun7773 小时前
Linux_C++网络编程四种CS模型
linux·运维·服务器
vortex53 小时前
如何快速删除 Linux 中的海量小文件:告别rm命令的缓慢困境
linux·运维·服务器
学习3人组4 小时前
Docker 从本地Label-studio导入 tar 镜像包
运维·docker·容器
羑悻的小杀马特5 小时前
Docker-Android 容器化 + cpolar 穿透,完善异地调试
android·运维·docker·容器·cpolar
Y.O.U..5 小时前
Kubernetes-网络策略
网络·容器·kubernetes