chatgpt-web-dev/chatgpt-web

uploads图片上传目录映射到本地,结合nginx部署

Opened this issue · 5 comments

我现在不维护代码了,故将部署遇到的问题直接贴出来,方便遇到问题的同学查看,或者大老直接在源码中修改:

docker-compose.yml
image
image

nginx.conf
image

感谢分享。暂时保持该issue 开放。 等之后优化这块文档的时候一起整合进去。
或者您也可以直接提个PR改下文档哈。@huangzt

非docker部署,直接在nginx的对应根目录创建了uploads目录,但是上传图片还是裂开的.但是后端接口是可以收到对应图片的信息的
image

非docker部署,直接在nginx的对应根目录创建了uploads目录,但是上传图片还是裂开的.但是后端接口是可以收到对应图片的信息的 image

是不是nginx的权限问题?

非docker部署,直接在nginx的对应根目录创建了uploads目录,但是上传图片还是裂开的.但是后端接口是可以收到对应图片的信息的 image

是不是nginx的权限问题?

对应的权限都给到了

非docker部署,直接在nginx的对应根目录创建了uploads目录,但是上传图片还是裂开的.但是后端接口是可以收到对应图片的信息的 image

注意看设置说明,docker容器内的文件保存路径是固定的,由于chatgpt web和nginx是两个容器来的,要能正确访问到同一图片,需要将这两个容器的目录映射到主机上的同一个目录上:

volumes:
  - ./uploads:/app/uploads
  
volumes:
  - ./uploads:/usr/share/nginx/html/uploads

其中:./uploads 为主机上的目录,这个.是当前运行目录,你可以改成绝对路径,比如:/home/chatgpt/uploads
冒号后面的是容器内的目录,具体你看前端和后端的代码就能理解。

另外,如果你没有自己定制或者个性化前端的需求的,可以不使用ng来部署的,镜像 image: chatgptweb/chatgpt-web 就自带前端资源的,可以只做简单的端口转发即可。