gpt4 book ai didi

macos - 在docker外保存时,作为docker卷装载的文件损坏

转载 作者:行者123 更新时间:2023-12-02 19:41:03 24 4
gpt4 key购买 nike

在主机中,我有这个目录:
/Users/gezimhome/projects/ziprecipes.net/zip-recipes/src
我将其安装到我的docker容器上是
/usr/share/nginx/html/wordpress/wp-content/plugins/zip-recipes
如果我在Docker外部修改以下文件(例如添加新行):/Users/gezimhome/projects/ziprecipes.net/zip-recipes/src/plugins/VisitorRating/scripts/main.js,我在浏览器中收到语法错误:

苹果浏览器:
enter image description here

Chrome :
enter image description here

如果我进入docker容器并打开文件(/usr/share/nginx/html/wordpress/wp-content/plugins/zip-recipes/plugins/VisitorRating/scripts/main.js),然后又将保存为而不做任何更改,那么错误就消失了。

我知道这将是一个弯腰。

我已经尝试在主机中使用多个编辑器/ IDE来保存文件。没什么区别。

更新:哇,当我从docker内部编辑文件时以及从外部编辑文件时,我都将文件保存在docker内部。

cp /usr/share/nginx/html/wordpress/wp-content/plugins/zip-recipes/plugins/VisitorRating/scripts/main.js /host.js
# editted the file in same way inside docker
cp /usr/share/nginx/html/wordpress/wp-content/plugins/zip-recipes/plugins/VisitorRating/scripts/main.js /docker.js
root@219a4126d14a:/# diff /host.js /docker.js
root@219a4126d14a:/#

最佳答案

事实证明,这是由nginx中的sendfile设置引起的。

为了解决这个问题,我将nginx网站配置文件(本例中为/etc/nginx/sites-enabled/nginx_wordpress)更改为sendfile off,如下所示:

server {
listen 8080;
server_name zrdn;

sendfile off;
...
}

关于macos - 在docker外保存时,作为docker卷装载的文件损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36087795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com