宝塔1024程序员节&双十一超级狂欢,证书买一年送一年查看活动
当前位置:论坛首页 > BUG提交 > Linux面板

【已完成】Docker模块创建的网站不支持Laravel、thinkphp等的Bug

发表在 BUG提交2025-8-13 14:27 [复制链接] 2 334

宝塔版本:9.6.0

Docker 模块里创建网站,不支持Laravel、thinkphp等



原因是因为Laravel ,thinkphp 等框架,需要设置运行子目录为 public
这个bug最主要的问题是:当网站设置里设置运行子目录为public后,会把docker容器映射宿主的项目根路径,改为映射到linux根目录的 /public:/public

1.jpg
预期是网站设置里修改运行子目录,只修改Nginx配置,而非去修改容器映射的项目目录( ${SITE_PATH} : ${SITE_PATH})

临时解决的办法为:Docker创建网站后,打开:/www/server/panel/vhost/nginx 目录,找到你的 "域名.conf"文件 比如 "www.baidu.com.conf"
双击打开,修改 root 配置,后面加上 /public
2.jpg




还有另外一个Bug是:Docker模块的网站设置里设置的网站目录不生效,只能把网站文件拷贝到创建网站时默认自带的目录里。无论是创建时,还是后期修改都一样不行

使用道具 举报 只看该作者 回复
发表于 2025-9-13 10:56:16 | 显示全部楼层
修复面板到最新版即可
使用道具 举报 回复 支持 反对
发表于 2025-9-23 18:59:31 | 显示全部楼层
阿珂 发表于 2025-9-13 10:56
修复面板到最新版即可

面板升级到  v11.1.0

实测还有个问题,Laravel项目里,子目录选择public后

宝塔后台->Docker->容器编排->对应配置文件->.env->SITE_PATH变量,会变成项目路径+public路径 7158cae9-8d1a-4c0a-b59b-9754e19e955c.png

这会导致 挂在到容器的目录 就一个public目录,网站其他目录都不存在。网站运行不起来,显示HTTP状态码 500


解决方案

手动把 public 部分删掉,应为项目根目录。然后重启编排即可


使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析

工作时间:09:00至18:30

快速回复 返回顶部 返回列表