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

相关推荐
鲁正杰35 分钟前
在一个服务器上抓取 Docker 镜像并在另一个服务器上运行
运维·服务器·docker
aherhuo1 小时前
基于openEuler22.09部署OpenStack Yoga云平台(一)
linux·运维·服务器·openstack
WebDeveloper20011 小时前
如何使用美国域名中心US Domain Center和WordPress创建商业网站
运维·服务器·css·网络·html
老大白菜1 小时前
Windows 11 安装 Dify 完整指南 非docker环境
windows·docker·容器
檀越剑指大厂2 小时前
【Linux系列】Shell 脚本中的条件判断:`[ ]`与`[[ ]]`的比较
linux·运维·服务器
2301_819287124 小时前
ce第六次作业
linux·运维·服务器·网络
CIb0la4 小时前
GitLab 停止为中国区用户提供 GitLab.com 账号服务
运维·网络·程序人生
武汉联从信息4 小时前
如何使用linux日志管理工具来管理oracle osb服务器日志文件?
linux·运维·服务器
天天进步20154 小时前
STUN服务器实现NAT穿透
运维·服务器
PieroPc4 小时前
Python 自动化 打开网站 填表登陆 例子
运维·python·自动化