upgrading.md 2.5 KB


title: 升级到新版本 menu: docs:

weight: 70
parent: admin

{{< hint style="info" >}} 当一个新的Mastodon版本释出后,它将出现在GitHub releases页面。请注意:运行来自main分支的未释出代码,虽然可以进行,但不推荐这样做。 {{< /hint >}}

Mastodon版本与git tags一致。在尝试升级之前,请至GitHub releases页面查找所需版本。该页面包含了一个更新日专,其中描述你需要了解的所有差异,以及特定的升级指令

开始之前,切换至mastodon用户:

su - mastodon

并转至Mastodon根目录:

cd /home/mastodon/live

下载相应版本代码,这里假定版本为v3.1.2

git fetch --tags
git checkout v3.1.2

现在,执行GitHub版本发布说明中的升级指令。因为不同的版本有不同的指令,所以本页面将不包括任何指令。

{{< hint style="info" >}} 从旧版本升级时,你可以安全的跳过中间版本。你无需单独检出他们。然而,你确实需要追踪每一个版本的升级指令。大多数指令都是重叠的,你只需要确保每条至少执行一次即可。 {{< /hint >}}

当你执行完版本发布说明中的指令后,切换回root用户:

exit

重启后台worker

systemctl restart mastodon-sidekiq

并重载web进程

systemctl reload mastodon-web

{{< hint style="info" >}} reload操作是零下线时间的重启(restart),也被称为“分阶段重启(phased restart)”。因此,Mastodon升级通常不需要为计划下线而提前发布公告。罕见情况下,你可以改用restart操作,但你的用户将感到(短暂的)服务中断。 {{< /hint >}}

罕见情况下,streaming API 服务也会被更新并需要重启:

systemctl restart mastodon-streaming

{{< hint style="danger" >}} 更新streaming API服务非常罕见,在大多数版本中,*不*需要重启它。重启streaming API将导致服务器负载增加,因为断线的用户会尝试重连或改用REST API轮询。因此请尽量避免重启streaming API服务 {{< /hint >}}

{{< hint style="success" >}} 就这样! 您现在正在运行新版本的Mastodon。 {{< /hint >}}

{{< translation-status-zh-cn raw_title="Upgrading to a new release" raw_link="/admin/upgrading/" last_tranlation_time="2020-05-04" raw_commit="ad1ef20f17">}}