参考: 如何利用Docker搭建Mastodon实例(一):基础搭建篇 - 技术小白搭建Mastodon站点指南 (pullopen.github.io)
docker-compose.yml 和 .env.production 文件配置是部署成功与否的关键。
邮件设置有坑,不同服务器设置不同,没有办法只能多试试。
修改配置文件
如果在之后需要再对.env.production配置进行修改,只需:
cd /home/mastodon/mastodon
nano .env.production
进行相应修改,然后
docker-compose down
docker-compose up -d
重启即可。
升级
如果你要升级到最新版本,只需要:
cd /home/mastodon/mastodon
docker pull tootsuite/mastodon:latest #或者将latest改成版本号如v3.2.1
如果你升级的是特定版本,则需要编辑docker-compose.yml,将web、streaming、sidekiq三部分的版本号改成相应版本。如果是latest则无需改动。
然后启动
docker-compose up -d
如果官方升级提示中包括其他步骤如docker-compose run --rm web rails db:migrate
,则可在启动后进行。
在确认升级没问题之后,运行
docker system prune -a
清除旧的docker镜像文件。
迁移
打包容器和网站文件,然后在新服务器导入。
旧服务器:
1、可选:清理媒体文件缓存
docker exec mastodon-web-1 tootctl media remove-orphans
扫描出不属于任何媒体附件的文件并移除
docker exec mastodon-web-1 tootctl media remove --days=7
移除7天前本地缓存的其它实例媒体附件
docker exec mastodon-web-1 tootctl preview_cards remove
移除本地预览卡片缩略图
2、宝塔面板:docker - 容器,点击容器名称,生成镜像,生成镜像后导出压缩包(也可以直接用命令生成镜像:docker save > mastodon-web-1.tar mastodon_web_1)。5个mastodon开头的容器都要生成镜像;
3、打包 /home/mastodon/mastodon 目录;
新服务器:
1、路径不变,打包的旧服务器的mastodon目录同样放在/home/mastodon/mastodon解压缩
镜像文件也一并上传,执行导入镜像命令:docker load < mastodon-web-1.tar,5个镜像都要导入
(有时候宝塔的docker环境会装不上,可以用命令安装:curl -fsSL https://get.docker.com | bash -s docker)
2、导入完成以后启动mastodon:docker-compose up -d
3、最后添加mastodon站点域名,SSL证书,复制粘贴旧服务器nginx配置,收工。
在确认迁移没问题之后,运行
docker system prune -a
清除旧的docker镜像文件。
另外:迁移后出现过打开网站只有mastodon logo的情况,nginx配置、权限都没问题,最后重新打包了容器镜像然后再导入就正常了。
Mastodon/Misskey/Pleroma中文中继
https://relay.dragon-fly.club/
https://relay.acg.mn/