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

相关推荐
xingyuzhisuan3 小时前
网络 Token 常见故障原理,基础排查科普
运维·服务器·网络·php
APIshop3 小时前
Python 获取 1688 商品采集 API 接口 | 工厂货源自动化对接商品信息 | 无需选品
运维·python·自动化
wljy14 小时前
二、进制状态转换
linux·运维·服务器·c语言·c++
handler014 小时前
【MySQL】常用命令总结(库与表增删查改)
运维·数据库·mysql·命令·总结
week@eight4 小时前
Linux - Doris
linux·运维·数据库·mysql
tellmewhoisi4 小时前
项目部署docker(指令解析和docker-compose基础指令)
docker·容器
dinl_vin5 小时前
FastAPI 系列 ·(十二):生产部署——Docker + 配置管理(系列完结)
docker·容器·fastapi
看到代码头都是大的5 小时前
CentOS环境下手动升级openssl、openssh
linux·运维·centos
浮生若城5 小时前
Linux——Ext系列文件系统
linux·运维·服务器
ITyunwei09875 小时前
主流 SaaS 工单系统对比
运维·服务器·人工智能