如何在 Ubuntu 20.04 上安装 Mastodon如何在 Ubuntu 20.04 上安装 Mastodon如何在 Ubuntu 20.04 上安装 Mastodon如何在 Ubuntu 20.04 上安装 Mastodon
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 20.04 上安装 Mastodon

介绍

Mastodon 是一种微博社交网络应用程序,它使用分散模型,也称为联盟。 Mastodon 是开源的,任何人都可以在任何服务器上部署,每个服务器都是它自己的实例。每个实例都可以有自己的策略和节制。在所有 Mastodon 服务器的联盟中,每个 Mastodon 实例都可以知道其他实例。这允许在单个服务器内和跨多个实例与其他用户进行交互。

在本教程中,您将安装最新版本的 Mastodon,在撰写本文时为 4.0.2。您将配置官方 Mastodon 安装存储库,并设置环境以安装所有其他依赖项。使用交互式设置,您将为存储、电子邮件、资产和管理员帐户设置自定义 Mastodon 实例。最后,您将使用 Let's Encrypt 保护您的实例。

注意:本教程详细介绍了在裸机服务器上的安装,这是 Mastodon 背后的团队推荐的。您还可以考虑这种替代的 Mastodon 安装方法:

  • 我们市场上的一键式解决方案。您可以按照我们的教程如何使用 DigitalOcean Marketplace 安装 Mastodon 一键式开始。

先决条件

要学习本教程,您需要:

  • 具有启用 sudo 的非根用户和防火墙的 Ubuntu 20.04 服务器。您可以按照我们的 Ubuntu 20.04 初始服务器设置教程进行设置。
  • 按照我们关于如何在 Ubuntu 20.04 上安装和使用 PostgreSQL 的指南的第 1 步在您的服务器上安装 PostgreSQL。
  • 在您的服务器上安装了 Node.js 版本 16.xx。使用我们如何在 Ubuntu 20.04 上安装 Node.js 教程中的选项 2。
  • 按照我们如何在 Ubuntu 20.04 上安装 Nginx 教程的第 1 步在您的服务器上安装 Nginx。
  • 注册域名。本教程始终使用 your_domain。您可以在 Freenom 免费获得一个,或使用您选择的域名注册商。
  • A DNS 记录,your_domain 指向您服务器的公共 IP 地址。您可以使用 DigitalOcean 帐户管理您的域和 DNS 记录。

设置好所有内容后,您就可以开始第一步了。

第 1 步 — 创建 mastodon 系统用户和 PostgreSQL 角色

Mastodon 的源代码假设您的服务器将使用名为 mastodon 的特定系统用户进行管理。这目前被硬编码到 Mastodon 的许多部分。本教程将遵循在系统级别和作为 PostgreSQL 数据库角色创建和使用 mastodon 用户的建议。

本教程假设您在先决条件的初始服务器设置中创建了一个用户,但以下命令也可以作为 root 运行,并在命令前省略 sudo。首先,使用 adduser 创建您的 mastodon 用户:

  1. sudo adduser mastodon

接下来,将您的 mastodon 用户添加到 sudo 组以授予其管理权限:

  1. sudo usermod -aG sudo mastodon

创建系统级 mastodon 用户后,接下来在数据库中创建一个匹配角色。 PostgreSQL 使用对等身份验证,它将创建的角色与匹配的系统用户相关联。使用 mastodon 的匹配名称创建用户:

  1. sudo -u postgres createuser --interactive

interactive 标志将显示以下提示,您可以在其中选择新角色的名称 mastodon。确保输入 y 使您的新角色成为超级用户:

Output
Enter name of role to add: mastodon Shall the new role be a superuser? (y/n) y

现在您可以登录到您新创建的 mastodon 用户:

  1. su - mastodon

对于本教程的其余部分,您将作为此 mastodon 用户运行所有命令。

第 2 步 — 安装依赖项并克隆 Mastodon

Mastodon 的大部分配置都是通过交互式设置处理的,您将在后面的步骤中进行设置。首先,您需要安装它的依赖项。 Mastodon 是一个在 Linux 环境中运行时主要基于 Ruby 和 Node.js 的项目,因此需要三个包管理器: Yarn for Node.js packages。要从源代码安装,您需要克隆 Mastodon 存储库。该过程将按以下顺序进行:

  • 安装 APT 依赖项。
  • 从源代码中克隆 Mastodon。
  • 安装 Ruby 和 Mastodon 的 Ruby 依赖项。
  • 安装 Node.js 依赖项。

第一步是通过 apt 安装依赖项,其中包括:用于处理 TLS/SSL 加密的 Certbot,以及用于构建、编译和图像处理的杂项库。要安装这些,请使用 apt update 更新您的包索引:

  1. sudo apt update

然后使用 apt install 安装软件包:

  1. sudo apt install \
  2. imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev \
  3. libprotobuf-dev protobuf-compiler pkg-config \
  4. redis-server redis-tools \
  5. certbot python3-certbot-nginx libidn11-dev libicu-dev libjemalloc-dev

克隆乳齿象

现在您的服务器已准备好从其官方存储库中克隆 Mastodon 源代码。如前所述,本教程将使用最新版本的 Mastodon,在撰写本文时为 v4.0.2,以获得最新的功能、安全性和错误修复。

首先,将 Mastodon 存储库克隆到您的服务器中一个名为 live 的新目录中:

  1. git clone https://github.com/mastodon/mastodon.git live

此目录命名约定在整个 Mastodon 的文档中使用,建议使用以保持一致性。接下来,进入您创建的目录,请注意,这将是本教程其余部分的项目目录:

  1. cd live

现在你可以使用git查看最新版本v4.0.2:

  1. git checkout v4.0.2

安装 Ruby 和 Mastodon 的 Ruby 依赖项

有了 Mastodon 源代码,您现在可以继续安装 Ruby 和 Mastodon 的 Ruby 依赖项。您将安装 rbenv,这是用于安装 Ruby 编程语言的版本管理器工具。因为 rbenv 是在用户级别而不是系统级别安装的,所以必须在您创建并切换到您的 mastodon 用户后在此处完成此步骤。您将按照我们的教程如何在 Ubuntu 20.04 上使用 rbenv 安装 Ruby on Rails 的步骤 1 到 3 安装 Ruby 版本 3.0.4。虽然第 2 步中的版本 3.0.4 不会是明确列出的选项,但如果您在安装命令中指定此版本,它仍然可以使用。请记住,虽然本教程是针对 Ruby on Rails 的,但您将只使用侧重于使用 rbenv 安装 Ruby 的步骤。

Ruby 依赖项由 Bundler 管理。 Bundler 会安装 Mastodon 所需的所有 Ruby gem,但首先您需要将其配置为在安装时考虑到生产环境。

使用 Bundler 中的 bundle config 命令与其配置系统交互。使用它将 deployment 设置为 true:

  1. bundle config deployment 'true'

接下来,使用 without 来确保开发和测试的依赖不会被安装:

  1. bundle config without 'development test'

您现在可以使用 install 安装您的 Ruby 依赖项。这可能需要一些时间并暂停几次,但这是正常行为:

  1. bundle install
Output
Fetching gem metadata from https://rubygems.org/......... Fetching https://github.com/ClearlyClaire/webpush.git Fetching rake 13.0.6 Installing rake 13.0.6 Fetching concurrent-ruby 1.1.10 Installing concurrent-ruby 1.1.10 . . .

完成后,最后会出现很多输出,可能看起来需要对其进行操作。但是,您可以安全地继续操作而无需执行其他操作。

安装 Mastodon 的 JavaScript 依赖项

一旦 Mastodon 的 Ruby 依赖项安装完成,您就可以继续安装 JavaScript 依赖项了。 Mastodon 依赖 yarn 来管理和安装 JavaScript 包,而不是 npm。对于 Node.js 安装版本 16.10 及更高版本,yarn 默认情况下可通过 corepack 使用。

要访问 yarn,请启用 Node.js 包含的 corepack:

  1. sudo corepack enable

Yarn 在其 1.0 版(也称为 classic)和 2.0 版之间有着不同的发展历史。 Mastodon 需要 classic 版本的 yarn,您可以使用 yarn set version 启用它:

  1. yarn set version classic

现在您可以使用 yarn install 安装 Mastodon 的 JavaScript 依赖项。附加标志确保不会生成 yarn.lock 文件:

  1. yarn install --pure-lockfile
Output
yarn install v1.22.19 [1/6] Validating package.json... [2/6] Resolving packages... [3/6] Fetching packages... [4/6] Linking dependencies... warning Workspaces can only be enabled in private projects. [5/6] Building fresh packages... [6/6] Cleaning modules... Done in 50.84s.

您现在已准备好为您的服务器创建自定义 Mastodon 配置文件。

第 3 步 — 使用交互式设置生成 Mastodon 配置文件

Mastodon 使用 .env 文件的变体作为其配置文件。在 ~/live/.env.production.sample 中有一个示例可供查看,但您将使用交互式设置过程而不是复制该文件。完成后,将在 ~/live/.env.production 生成自定义文件。此交互式设置将涵盖基本服务器信息、建立 PostgreSQL 和 Redis 连接、设置云存储和电子邮件处理、编译 CSS 和 JavaScript 资产以及在 Mastodon 中创建管理员帐户。

在开始多步骤设置过程之前,请确保您的防火墙允许 SMTP 流量通过适当的端口。安全 TLS 连接的默认 SMTP 端口是端口 587,稍后将在电子邮件设置部分对此进行解释。现在,允许在防火墙内访问此端口:

  1. sudo ufw allow 587

要开始交互式设置,请使用 bundle exec rake 执行 Mastodon 的设置,同时为“production”设置环境变量:

  1. RAILS_ENV=production bundle exec rake mastodon:setup

输入您的域名。请注意,事后很难更改此设置,因此请仔细检查您输入的准确性:

Output
Your instance is identified by its domain name. Changing it afterward will break things. Domain name: your_domain

Mastodon 具有单用户模式,其中禁用注册。对于旨在与他人创建共享空间而设置的服务器,您不应启用单用户模式:

Output
Single user mode disables registrations and redirects the landing page to your public profile. Do you want to enable single user mode? No

对有关使用 Docker 的提示回答否,因为本教程涵盖裸机服务器上的常规安装:

Output
Are you using Docker to run Mastodon? no

配置数据库

通过在每次提示时按 Enter,所有 PostgreSQL 设置都可以保留为默认值。您的数据库不使用密码进行身份验证,而是使用对等身份验证,我们将在稍后讨论。现在,它可以留空:

Output
PostgreSQL host: /var/run/postgresql PostgreSQL port: 5432 Name of PostgreSQL database: mastodon_production Name of PostgreSQL user: mastodon Password of PostgreSQL user: Database configuration works!

Redis 设置也可以保持其默认值,并将密码字段留空。您不会设置密码,因为该数据库只能在此服务器上本地访问。您可以针对每个提示按 Enter:

Output
Redis host: localhost Redis port: 6379 Redis password: Redis configuration works!

与两个数据库的连接将被测试为正常工作。

配置存储

接下来,系统会询问您是否将文件上传到云存储。 Mastodon 存储可以使用本地存储或通过许多提供商使用云存储来设置。如果您想使用本地存储,或者您没有准备好云存储即时解决方案,请回答否。

但是,这作为长期存储解决方案是不可持续的,建议将对象存储解决方案用于生产目的。 Mastodon 支持多种流行的对象存储解决方案,包括 DigitalOcean Spaces 和其他 S3 兼容解决方案,例如如何创建您自己的 DigitalOcean Space 和访问密钥:

Do you want to store uploaded files on the cloud? yes
Provider DigitalOcean Spaces
Space name: your_spaces_name
Space region: your_spaces_region
Space endpoint: your_spaces_endpoint
Space access key: your_spaces_access_key
Space secret key: your_spaces_secret_key
Do you want to access the uploaded files from your own domain? No

您还可以选择使用您域中的链接访问上传到您的 Mastodon 实例的文件,而不是使用指向您的云存储的直接链接。如果需要,您可以选择此选项,但本教程将选择否。如果您改变了对存储的想法,可以稍后返回并编辑生成的配置文件。查看官方 Mastodon 文档以了解有关文件存储的配置文件参数。

配置出站电子邮件

Mastodon 需要访问 SMTP 电子邮件服务器作为发送电子邮件的方法。建议使用外部电子邮件服务提供商,而不是运行您自己的。 Mastodon 在其示例中使用 Mailgun。维护安全可靠的电子邮件服务器是一项艰巨的任务,因此建议您依赖外部第三方电子邮件服务提供商。但是,您应该知道,大多数第三方电子邮件服务提供商根据数量收费,并且可能有也可能没有低于特定使用阈值的免费套餐。在这种情况下,建议您自行决定。

注意:虽然本教程可以在没有即时 SMTP 解决方案的情况下完成,但通过将所有凭据字段留空或默认,这样做会妨碍 Mastodon 的全部功能,因此不推荐这样做。您确实可以选择在电子邮件提供商处设置一个帐户,然后将您的凭据添加到您的配置文件中。但是,这意味着 Mastodon 的电子邮件将不会在您执行此操作之前发送,并且某些功能(例如关注其他帐户)将不可用。

Output
Do you want to send e-mails from localhost? No

对于所有电子邮件提供商,您都必须创建和配置一个帐户。这因提供商而异。很可能在注册后,您需要向您的提供商验证您的域,以便能够在涉及将 DNS 记录添加到您的域的过程中发送电子邮件。此外,您需要获取或生成 API 密钥作为安全身份验证的凭据。

本教程以 Mailgun 为例,但可以选择任何电子邮件服务提供商。这些选择也可以用作其他电子邮件服务提供商的指南。特别是 Mailgun 会为每个添加的域自动生成 SMTP 凭据。同样,这将根据您使用的电子邮件服务而有所不同,您应该查看其相应的文档:

Output
SMTP server: smtp.mailgun.org SMTP port: 587 SMTP username: your_smtp_username SMTP password: your_smtp_password SMTP authentication: plain SMTP OpenSSL verify mode: peer Enable STARTTLS: auto E-mail address to send e-mails "from": Mastodon <notifications@your_domain>

虽然默认的 plain 似乎不适合 SMTP 身份验证,但电子邮件服务提供商支持的 SMTP 身份验证的常见选项包括 plain 和 login,它们都是 Base64 编码的。单独使用 Base64 编码并不足以确保安全。相反,真正重要的是通过安全的 TLS/SSL 连接向您的电子邮件提供商提交请求。端口 587 上的 SMTP 连接是与电子邮件提供商的 TLS 连接的默认设置。虽然当 TLS 得到适当保护时这种选择是安全的,但查阅您的电子邮件服务提供商的官方文档将为您提供有关如何安全地与其 SMTP 服务交互的更详细和具体的答案。

发送一封测试电子邮件以确保您的 SMTP 凭据有效,然后指定您有权访问的收件人电子邮件,例如您的个人电子邮件:

Output
Send a test e-mail with this configuration right now? yes

此测试电子邮件可能需要一分钟才能到达,具体取决于您的电子邮件服务。同样,您可以稍后返回以在生成的 Mastodon 配置文件中更改您的 SMTP 凭据。

完成您的配置

接下来,系统会提示您保存配置。然后 Mastodon 将使用它来创建您的数据库:

Output
This configuration will be written to .env.production Save configuration? Yes Now that configuration is saved, the database schema must be loaded. If the database already exists, this will erase its contents. Prepare the database now? Yes Running `RAILS_ENV=production rails db:setup` ... Created database 'mastodon_production' Done!

之后,系统会提示您编译 Mastodon 的 CSS 和 JavaScript 资产。注意关于时间和资源消耗的警告:

Output
The final step is compiling CSS/JS assets. This may take a while and consume a lot of RAM. Compile the assets now? Yes Running `RAILS_ENV=production rails assets:precompile` ... yarn install v1.22.19 [1/6] Validating package.json... [2/6] Resolving packages... [3/6] Fetching packages... [4/6] Linking dependencies... . . . All done! You can now power on the Mastodon server

您的 Mastodon 服务器现已准备就绪,但尚未运行。还有另一个提示创建管理员帐户以登录您的 Mastodon 服务器:

Output
Do you want to create an admin user straight away? Yes Username: mastodon E-mail: your_email You can login with the password: your_generated_password You can change your password once you login.

请注意,您现在无法为管理员帐户选择密码。您将获得一个唯一的、生成的密码,您应该在别处记下该密码。一旦您获得了管理 UI 的访问权限,您就有机会更改您的密码。

打开生成的 Mastodon 配置文件以在 nano 或您首选的文本编辑器中验证其内容:

  1. nano ~/live/.env.production

内容将类似于以下内容:

# Generated with mastodon:setup on 2022-11-22 18:22:25 UTC

# Some variables in this file will be interpreted differently whether you are
# using docker-compose or not.

LOCAL_DOMAIN=your_domain
SINGLE_USER_MODE=false
SECRET_KEY_BASE=your_generated_key_base
OTP_SECRET=your_generated_secret
VAPID_PRIVATE_KEY=your_generated_private_key
VAPID_PUBLIC_KEY=your_generated_public_key
DB_HOST=/var/run/postgresql
DB_PORT=5432
DB_NAME=mastodon_production
DB_USER=mastodon
DB_PASS=
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
S3_ENABLED=true
S3_PROTOCOL=https
S3_BUCKET=your_spaces_name
S3_REGION=your_spaces_region
S3_HOSTNAME=your_spaces_endpoint
S3_ENDPOINT=https://your_spaces_endpoint
AWS_ACCESS_KEY_ID=your_spaces_access_key
AWS_SECRET_ACCESS_KEY=your_spaces_secret_key
SMTP_SERVER=smtp.mailgun.org
SMTP_PORT=587
SMTP_LOGIN=your_smtp_username
SMTP_PASSWORD=your_smtp_password
SMTP_AUTH_METHOD=plain
SMTP_OPENSSL_VERIFY_MODE=peer
SMTP_ENABLE_STARTTLS=auto
SMTP_FROM_ADDRESS='Mastodon <notifications@test.do-community.com>'

您可以在交互式设置过程之后手动编辑此文件。完成检查后,保存并关闭文件。如果您正在使用 nano,您可以使用 CTRL + X 执行此操作,然后在出现提示时,Y 然后 Enter。

第 4 步 — 使用 Certbot 和 Let's Encrypt 为 Mastodon 配置 Nginx

您的 Mastodon 应用程序服务器目前只能在本地访问。要允许通过 Internet 访问它,您需要使用反向代理公开它。建议使用 Nginx 作为反向代理来为您的 Mastodon 应用程序提供服务。要了解有关反向代理主题的更多信息,您可以查看我们的代理介绍教程。

Mastodon 存储库附带一个您可以使用的默认 Nginx 配置文件,但是,您需要进行一些更改以将其与您自己的域相匹配,并使用 Certbot 和 Let's Encrypt 对其进行保护。尽管 Mastodon 提供的 Nginx 文件完全填充了完整部署所需的块和指令,但其默认的 SSL/TLS 设置阻碍了与 Certbot 的顺畅交互。此步骤将在使用 Certbot 之前和之后通过两轮编辑 Nginx 配置文件来绕过此限制。

首先,调整您的防火墙设置以允许 HTTP 和 HTTPS 流量到您的 Nginx 服务器:

  1. sudo ufw allow 'Nginx Full'

这对于用户访问您的 Mastodon 网站是必要的,但对于 Certbot 对您的证书进行必要的验证也是必需的。接下来,从 Mastodon 存储库复制提供的 Nginx 配置:

  1. sudo cp /home/mastodon/live/dist/nginx.conf /etc/nginx/sites-available/mastodon

Nginx 使用一种称为符号链接 或符号链接 的常见做法来跟踪启用了哪些服务器块。创建符号链接就像在磁盘上创建快捷方式,这样您以后可以从 sites-enabled 目录中删除快捷方式,同时将服务器块保留在 sites-available 中,如果您想启用它。使用您新创建的文件创建链接:

  1. sudo ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/mastodon

现在 Nginx 知道应该使用此配置文件中的设置来为您的 Mastodon 网站提供服务。但是,您还没有对 Nginx 配置进行必要的更改。使用您喜欢的文本编辑器打开复制的配置文件:

  1. sudo nano /etc/nginx/sites-enabled/mastodon

您需要确保 server_name 指令指向您的域,以及您域的 www. 版本。 server_name 有两个实例,一个在服务器块中侦听端口 80 用于 HTTP,第二个在块中侦听端口 443 对于 HTTPS。确保两个 server_name 指令都指向您的域。

此外,您需要通过在行首添加 # 符号来注释掉第二个 server 块中的 listen 指令。在您的 SSL 证书尚未设置的情况下,此 listen 指令的 ssl 参数将导致 Nginx 将此配置检测为无效。这意味着 Certbot 不会为您创建证书。要解决此问题,请暂时注释掉此指令并在创建证书后重新启用它:

. . .
server {
  listen 80;
  listen [::]:80;
  server_name your_domain www.your_domain;
  root /home/mastodon/live/public;
  location /.well-known/acme-challenge/ { allow all; }
  location / { return 301 https://$host$request_uri; }
}

server {
   # listen 443 ssl http2;
   # listen [::]:443 ssl http2;
  server_name your_domain www.your_domain;
. . .

完成后,保存并关闭文件。现在您已准备好创建用于安全 SSL/TLS 访问的证书。因为您使用的是 Mastodon 的默认 Nginx 配置文件,它是预先填充的,所以您的 Certbot 命令是使用 certonly 调用的。这允许您手动配置配置文件。否则,Certbot 可能会对您的 Nginx 环境做出与 Mastodon 不兼容的假设:

  1. sudo certbot certonly --nginx -d your_domain -d www.your_domain
Output
. . . IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/your_domain/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/your_domain/privkey.pem . . .

记下生成的证书和密钥文件的路径。您需要将其添加到您的配置文件中。再次使用您喜欢的文本编辑器打开您的配置文件:

  1. sudo nano /etc/nginx/sites-enabled/mastodon

回忆一下您之前针对端口 443 注释掉的 listen 指令。您现在可以安全地取消注释它们。以前,这些行会由于缺少证书而导致错误。使用您通过 Certbot 新创建的证书,这些行现在有效。

此外,取消注释同一块中的 ssl_certificate 和 ssl_certificate_key 指令。确保它与 Certbot 之前生成的证书的文件路径相匹配:

. . .
server {
   listen 443 ssl http2;
   listen [::]:443 ssl http2;
  server_name your_domain www.your_domain;
. . . 
  # Uncomment these lines once you acquire a certificate:
   ssl_certificate 	/etc/letsencrypt/live/your_domain/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem;
. . .

保存文件并退出文本编辑器。使用以下命令验证您的 Nginx 配置文件是否有效:

  1. sudo nginx -t

最后,重启 Nginx 以应用更改:

  1. sudo systemctl reload nginx

您的 Mastodon 服务器现在由 Nginx 提供服务,但您仍然需要在查看您的网站之前设置一些服务。

第 5 步 — 设置 Mastodon 服务

Mastodon 由三个系统服务组成,以维护功能和正常运行时间:mastodon-web、mastodon-sidekiq 和 mastodon-streaming。这允许 Mastodon 始终重启并保持 Web 应用程序和异步任务调度的活动。 Mastodon 自带这些服务,您需要将它们放在正确的位置并启用它们。

首先,从 Mastodon 源复制服务:

  1. sudo cp /home/mastodon/live/dist/mastodon-*.service /etc/systemd/system/

这些文件假定所有内容都已安装并考虑默认值,例如使用 mastodon 作为您的用户。如果您使用的任何内容与默认值或本教程的建议不同,您可以在首选文本编辑器中打开这些文件,并检查是否有任何需要更改的用户名或路径:

  1. sudo nano /etc/systemd/system/mastodon-*.service

如果您按照本教程中的步骤操作,则无需更改任何内容。检查文件后,关闭它们并继续激活这些服务。首先,您需要调用 daemon-reload 来识别这些:

  1. sudo systemctl daemon-reload

然后您可以启用新识别的服务:

  1. sudo systemctl enable --now mastodon-web mastodon-sidekiq mastodon-streaming
Created symlink /etc/systemd/system/multi-user.target.wants/mastodon-web.service → /etc/systemd/system/mastodon-web.service.
Created symlink /etc/systemd/system/multi-user.target.wants/mastodon-sidekiq.service → /etc/systemd/system/mastodon-sidekiq.service.
Created symlink /etc/systemd/system/multi-user.target.wants/mastodon-streaming.service → /etc/systemd/system/mastodon-streaming.service.

您的 Mastodon 安装现已完成。您可以通过转到 https://your_domain 在浏览器中打开 Mastodon。请注意,您第一次尝试在浏览器中打开 Mastodon 将触发一些后端初始化,这些初始化可能在页面加载时尚未完成,从而导致错误,例如 We're sorry, but something went wrong on our end。在这种情况下,等待几秒钟,然后在按住 Shift 的同时刷新浏览器以执行硬刷新。这将解决问题,并且只会在第一次加载 Mastodon 时发生:

您可以使用之前的管理员用户名和生成的密码登录并开始使用。

结论

在本教程中,您将设置自己的 Mastodon 服务器。这包括使用反向代理设置数据库和 Web 服务器,以及特定于 Mastodon 的所有要求和依赖项。在创建您的第一个管理员帐户之前,您可以在 Mastodon 中设置电子邮件、存储和资产。最后,您使用 Certbot 和 Let's Encrypt 通过 SSL/TLS 保护您的设置。

建议您现在更改新 Mastodon 服务器上的密码和管理设置。要了解如何使用新的 Mastodon 实例并探索其功能,您可以查看我们的如何使用 DigitalOcean Marketplace 一键式安装 Mastodon 教程的第 4 步到第 6 步。

©2015-2025 艾丽卡 support@alaica.com