我正在使用实验性的 discourse/discourse:3.5.1 Docker 镜像(通过 Docker Compose,而不是启动器)运行 Discourse,并注意到管理主题页面中内置的主题预览图片返回 404 错误。
环境:
-
镜像:
discourse/discourse:3.5.1 -
部署:Dokploy 上的 Docker Compose
-
数据库:PostgreSQL 17,带 pgvector
-
首次安装(2024 年 12 月)
问题: 访问 /admin/customize/themes 时,浏览器控制台显示主题预览图片的 404 错误:
https://forum.example.com/uploads/default/original/1X/d7dc093939924a0ce97287d65ec38bbcb2b23e00.png
https://forum.example.com/uploads/default/original/1X/f8a61b9a0bfac672daec9e401787812f8c5e28df.png
我尝试过的操作:
-
创建了正确的上传目录结构:
/shared/uploads/default/{original,optimized}/{1X,2X,3X} -
设置了正确的权限:
discourse:www-data所有权 -
运行了
rake uploads:regenerate_missing_optimized(成功完成但未生成这些文件) -
运行了
rake themes:update(无效果) -
验证了符号链接存在:
/var/www/discourse/public/uploads→/shared/uploads
观察结果:
-
点击主题预览时,主题预览可以正常工作(主题功能正常)
-
只有主题选择器中的缩略图丢失
-
引用到的 PNG 文件在容器中任何位置都不存在
-
数据库中有指向这些不存在文件的上传记录
问题: 这是实验性镜像的预期行为吗?这些预览图片应该在初始化期间被播种(seeded),还是我错过了某个迁移/任务?
论坛其他方面工作完全正常——这纯粹是外观问题。只是想确认这是否是实验性镜像的一个已知限制,或者我是否遗漏了某个设置步骤。