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

相关推荐
嘎嘎NULL35 分钟前
Gitea配置邮箱
运维·服务器·gitea
xiaoliuliu123453 小时前
Kylin V10 安装 compat-gcc-44-4.4.7-8.el7.x86_64.rpm 详细步骤
linux·运维·服务器
峰顶听歌的鲸鱼3 小时前
Kubernetes-Pod
linux·运维·云原生·容器·kubernetes·云计算
敲代码的哈吉蜂3 小时前
haproxy——socat热更新工具
linux·运维·服务器
小庄梦蝶4 小时前
宝塔使用nodejs管理器下载nodejs版本失败解决方式之一
linux·运维·前端
何中应4 小时前
解决Jenkins界面操作非常慢的问题
java·运维·jenkins
赵鑫亿4 小时前
ClawPanel v4.4.0 发布:AI 智能助手 + 模型兼容性修复 + UI 优化
人工智能·ui·docker·容器·qq·openclaw
was1724 小时前
轻量级多服务器监控:Beszel 的安装与实战部署
运维·服务器·状态监控
小王C语言4 小时前
【进程概念】————进程切换、环境变量
linux·运维·服务器
Codefengfeng5 小时前
压缩包的恢复
linux·运维