如何在云服务器上搭建Mastodon?
从零开始:手把手教你搭建属于自己的Mastodon社交平台
随着去中心化社交网络的兴起,Mastodon作为开源的联邦式社交平台越来越受欢迎。本文将详细介绍如何在云服务器上搭建Mastodon实例,让你拥有完全自主控制的社交空间。
准备工作
- 一台云服务器(推荐配置:2核CPU,4GB内存,50GB存储)
- 域名一个(建议使用.com或.net等常见后缀)
- 基本的Linux命令行操作知识
- 1-2小时不被打扰的时间
详细搭建步骤
第一步:服务器环境配置
建议使用Ubuntu 20.04 LTS系统,执行以下命令更新系统:
sudo apt update && sudo apt upgrade -y
第二步:安装必要依赖
Mastodon需要以下软件包支持:
sudo apt install -y \
curl \
git \
gnupg2 \
nginx \
redis-server \
postgresql \
postgresql-contrib \
certbot \
python3-certbot-nginx
第三步:安装Node.js和Yarn
curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -
sudo apt install -y nodejs
sudo npm install -g yarn
第四步:创建Mastodon用户
sudo adduser --disabled-login mastodon
sudo su - mastodon
第五步:下载并安装Mastodon
git clone https://github.com/mastodon/mastodon.git
cd mastodon
git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
bundle install
yarn install
配置与优化
数据库配置
创建PostgreSQL用户和数据库:
sudo -u postgres psql
CREATE USER mastodon CREATEDB;
\q
环境变量配置
编辑.env.production文件,设置以下关键参数:
DB_HOST=/var/run/postgresql
DB_USER=mastodon
DB_NAME=mastodon_production
REDIS_URL=redis://localhost:6379
Nginx配置
创建Nginx配置文件:
sudo nano /etc/nginx/sites-available/mastodon
常见问题解决
邮件服务配置
推荐使用Mailgun或SendGrid等第三方服务:
SMTP_SERVER=smtp.mailgun.org
SMTP_PORT=587
SMTP_LOGIN=your_login
SMTP_PASSWORD=your_password
SMTP_FROM_ADDRESS=notifications@yourdomain.com
性能优化建议
- 使用CDN加速静态资源
- 配置Redis持久化
- 定期清理过期数据
通过以上步骤,你已经成功搭建了自己的Mastodon实例。记得定期备份数据,并关注官方安全更新。去中心化社交网络的美好未来,从你的服务器开始!
