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

相关推荐
huainingning8 分钟前
华为oceanstor5310存储单机设备配置
运维·服务器·网络
Horn Still Sounds15 分钟前
【Linux 系统编程】IPC 进程间通信全解:管道、有名管道与信号
linux·运维·服务器
莫陌尛.25 分钟前
StarRocks Iceberg MinIO S3 301报错完整修复文档(Docker环境)
java·docker·容器
代码终究输给规则29 分钟前
MATLAB r2026a 安装包和安装教程
linux·运维·服务器
StarRocks_labs39 分钟前
StarRocks 4.1:聚焦生产实践,持续降低运维复杂度
运维·starrocks·iceberg·schema·物化视图·tablet·存算分离架构
钟良堂42 分钟前
Ubuntu 20.04 部署 ORB_SLAM3 完整流程与踩坑总结
linux·运维·ubuntu
Java后端的Ai之路1 小时前
09、Python组合模式
开发语言·人工智能·python·docker·组合模式
张小姐的猫1 小时前
【Linux】网络编程 —— 手动部署 & 测试内网穿透
linux·运维·服务器·网络·tcp/ip
有续技术1 小时前
工业网关接入 PLC,为什么要先整理点表?
运维·网络·数据库
深念Y1 小时前
ZTE B860AV1.1-T2 机顶盒改造记录:从 Android 到 Linux 服务器
android·linux·运维·服务器·boot·cma·机顶盒