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

相关推荐
西安同步电子6 分钟前
卫星信号丢失怎么办?NTP 网络校时服务器的守时能力
运维·服务器·网络
海宇服务25 分钟前
零信任架构实战:基于海宇网上踪迹欺诈行为识别构建自动化电商大促营销补贴风控网关
运维·人工智能·架构·自动化
川石课堂软件测试27 分钟前
涨薪技术|0到1学会性能测试第8课-Analysis分析图
服务器·数据库·python·sql·jmeter·mysql·容器
71777734 分钟前
国内 Docker 镜像仓库推荐:Gitee 与主流方案对比及选型指南
docker·容器·gitee
江湖有缘44 分钟前
Docker实战 | Docker部署Minimalist-web-notepad个人笔记本
前端·docker·notepad++
djjjx.1 小时前
Linux进程篇(四):内核托底与生死交错 ,深度硬核剖析“僵尸”与“孤儿”进程
linux·运维·服务器
m0_646429971 小时前
VS Code Remote SSH 使用 Codex:通过 SSH 转发本地代理
运维·ssh
会写代码的青蛙1 小时前
青蛙自动化
运维·自动化
weixin_437961921 小时前
Docker安装(windows)
windows·docker·容器
GPU实战笔记2 小时前
Docker Hub 项目镜像拉取前提:缓存区域节点的可扩容数据盘
docker·docker hub·容器镜像·a100·gpu云计算