Discourse 升级时候 500 错误

在对 Discourse 升级的时候,得到系统的错误:

这个错误比较诡异,直接就 500 错误了,没有办法查看其他的提示信息。

后来通过服务器上的日志,我们看到:

看这个情况应该是没有安装成功。

错误原因

针对上面的错误原因,官方的解释是可以到服务器上去运行 rebuild 命令。

cd /var/discourse
./launcher rebuild app

随后我们看到 Discourse 在从服务器上获取 Docker 相关的容器和代码。

随后还是提示升级失败,失败的原因是服务器上的磁盘空间不足。

这次升级需要至少 5G 的磁盘空间。

解决办法就是删除老的 Docker 镜像。

从此,我们了解到,Discourse 在每次升级的时候,老的 Docker 镜像都没有删除,随着升级次数的增加,则会增加大量的磁盘空间使用。

最简单的办法就是使用 :./launcher cleanup 命令来删除。

看了下服务器存量,确实用的变多了,那么如何删除docker镜像呢,求教程

没事了,找到了, 命令是 ./launcher cleanup

对的,对的。

根据官方的说法是,当 Discourse 的守护进程发现服务器的存储空间少于 5 GB 的时候,他们会自动运行命令 ./launcher cleanup 来删除掉历史的 Docker Image。

你是网站管理员的话,还是需要在升级后关注下服务器上的空间。

感觉是如果使用 VPS,在 40G 左右的磁盘存储空间上,通常升级几次后就要清理下。

如果你是物理服务器,并且磁盘空间在 1TB 以上的话,通常不需要太关注这个细节,基本上 1 年清理一次也就差不多了。

1 Like