解决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的值不会改变。

相关推荐
hy____12312 小时前
Linux_进程间通信
linux·运维·服务器
啦啦啦小石头12 小时前
Docker 换源
docker
银发控、12 小时前
nginx静态资源
运维·nginx
老百姓懂点AI13 小时前
[测试工程] 告别“玄学”评测:智能体来了(西南总部)基于AI agent指挥官的自动化Eval框架与AI调度官的回归测试
运维·人工智能·自动化
德育处主任Pro13 小时前
『NAS』用SSH的方式连上NAS
运维·ssh
Meaauf13 小时前
VMware安装中科方德服务器操作系统
运维·服务器·中科方德
南宫码农13 小时前
神马影视8.5版本如意伪静态+视频教程
linux·运维·centos
j_xxx404_13 小时前
Linux:命令行参数与环境变量
linux·运维·服务器
j_xxx404_13 小时前
Linux:进程虚拟地址空间|虚拟内存管理
linux·运维·服务器
江畔何人初14 小时前
pod的定义以及创建过程
linux·运维·云原生