未经审视的人生不值得过。

我的pleroma搭建笔记

2022.01.18

写在前面

已经搭好自己的pleroma实例并且正常运行一段时间了,是时候写一篇学习笔记了。声明:本笔记仅有10%为原创内容,90%都是交作业(^_^)

我作为一个啥也不懂的小白,很多在别人眼里不算问题的问题就足以难倒我了。在这期间,Suica老师温柔地说“有问题一定来问噢”给了我很大的勇气。谢谢Suica老师的耐心回答和细致的debug!后来我也请教了Kana老师如何做表情包放大的功能,还问了若干问题。不仅感谢Kana老师的热情回答,也想感谢Kana这一年多用心运营了wuppo站。

我和Pleroma的缘分就是从我注册了wuppo的那一天开始的,Kana发给我了一篇pleroma使用tips&更新合集(而这篇正是Suica写的指南),我才得以一窥fediverse的浩瀚。

如今我终于在这个宇宙里面有了一颗小小的星球,认识了许许多多的别的星球的居民。来日方长,期待和大家继续交流~

本文的另一处存档


建站准备工作

关于本人的介绍:大学学过一点python,非程序员。所以,我行,你也行(〃 ̄︶ ̄)人( ̄︶ ̄〃)

(2022/05/01 更新)我认为很有帮助的三个理解: 1、代码也是一种语言,所以,不要只是粘贴复制,我们一边理解这行代码什么意思,一边就可以仿词造句。2、VPS是啥啊?反正我理解的它是一台可以远程操作的电脑,我要是不想在dos页面粘贴代码了,我就直接访问虚拟机的桌面改文件里面的源码啊。3、报错不可怕,就是因为报错,我才知道我下一步该干啥。而且把报错的代码拿去google,很容易就能找到N个已经被解决的错误……(虽然大部分都是英语,但是我们老中人从小学英语,实在看不懂就一键网页翻译嘛。)


部分参考资料:




参考资料提供的是一个思路。当我捋清思路后,我选择了《在 Debian 10 / Ubuntu 20.04 上安装 Pleroma(版本:2.2.1)》这篇教程开始搭建。我的搭建过程和这篇教程基本一样,所以下面也只记录一些不一样的花式报错内容……

(^_^)如果您是一位正在搭建pleroma的新手,以上就是我认为的本博文最有帮助的内容。祝您建站成功!接下来都是多位老师教我的各种知识,也没什么原创的内容,只有我放飞自我的私人学习笔记了!


用支付宝购买国外域名和国外VPS

我花费最长时间的行为其实是绞尽脑汁地试图开通visa/万事达的信用卡。

然后我失败了。

多希望这些厂家可以推出像亚马逊礼品卡那样的好东西,在淘宝上买卡,然后在亚马逊官网充值后随意购买物品,充分保障了消费隐私,而不至于逼着我用支付宝在天朝监管下裸奔交易。如果有朝一日我无法再用支付宝付款,只能用数字人民币,那我可能就关站了吧。嘛,今朝有酒今朝醉了。

当然那个时候我就会再一次绞尽脑汁地试图开通visa/万事达的信用卡。

用支付宝付款,风险担在我身上;而购买国内的域名和VPS,就是坑别的fediverse用户了。所以我权衡后的最佳组合是用支付宝购买国外域名和VPS。

  • 找到一个靠谱一点的国外主机测评网 https://www.zhujiceping.com/
  • 挑一个物美价廉(主要还是谁便宜就买谁,欸,就是玩)的国外厂商,一眼相中了Justhost。
    • 俄罗斯公司baxet llc(成立于2006~)旗下的justhost这几年在中国国内应该是比较火爆的,具体大致猜测原因有这么几个:(1)价格便宜,一个月不到8块钱;(2)不限流量,最低给200M带宽,允许你作死跑,当然不支持违规使用;(3)有大家喜欢的俄罗斯远东机房,还有那个莫斯科dataline没事儿机房给你带上个CN2 GT;(4)信用卡、PayPal、支付宝等可方便付款。
  • 买了三个月的1G内存、25G硬盘的VPS,花了大概78rmb。
  • 主机搞定,买域名!依然在寻找一个物美价廉还能用支付宝的国外厂商,我选择了godaddy:
    • 网站首页拉到底,选择网站初始语言,选中文。不要选中文港台繁体,因为还是用不了支付宝。选对了之后设置了我喜欢的域名,购买一年的使用权,花了26rmb。有些域名后缀看起来很便宜,但实际上只是头年优惠力度大,要看它以后续费的正常价格贵不贵,当然一直换着买第一年也行?反正我超级喜欢我的域名,不换!续就完事!

打开《在 Debian 10 / Ubuntu 20.04 上安装 Pleroma(版本:2.2.1)》开始复制粘贴:

我想告诉自己,有探索的精神是好事,但是粘贴别人的代码还是要一行一行地来,看到这一行都已经报错了,还要头铁复制下一步的代码,怎么可能安的上嘛!但是,重启再来几乎能解决一切问题,如果不能,那就是没有删干净。Suica告诉我,不行就直接重装VPS(平时的重装记得备份,但此时此刻的我白手起家,可以说没有任何后顾备份之忧)。那么,就 再 来 一 次(^_^*)

因为购买了VPS和域名,跟着这篇教程,选用的管理VPS的工具就是Bitvise SSH Client,下载安装之后,打开这个软件登录邮件里面厂家发来的账号密码,就可以用这个工具方便地管理VPS,再进行各种安装pleroma的复制粘贴操作了。

而我连登录那一步都不会呢(^_^) 登录成功了就是这个样子:

登录1
登录2

然后就可以在页面里面开始复制粘贴这篇教程里面的代码了。


教程第一步 安装前准备过程中可能存在的一个问题

第3步Postgresql 性能调优中,需要修改postgresql.conf,而不同主机里面的该文件位置似乎不一样。

Suica教程里面写的是编辑/etc/postgresql/11.9/main/postgresql.conf,但我要找的文件并不在这个位置。

所以需要输入以下代码,查找正确位置:

find / | grep postgresql.conf

如图:

然后再根据找到的位置,编辑这个文件:

nano /etc/postgresql/11/main/postgresql.conf

如图:


教程第二步 正式安装pleroma的一个报错

因为我中途好几次自作聪明,没按照教程一步步运行成功就开始跳步骤执行下一步,所以第一次安装后面的奇怪报错层出不穷,只好重装来了第二次。尤其记得第9步里面若 config 文件生成成功,则出现若干问题需要回答,教程里面摘录的只是部分问题,其他问题我却没有耐心地按enter键,似乎就去弄第10步了……第二次我就老老实实地慢慢等所有问题填完,成功显示了**All files successfully written! Refer to the installation instructions for your platform for next steps. Please transfer your config to the database after running database migrations. Refer to “Transfering the config to/from the database” section of the docs for more information.**之后,再执行第10步的安装数据库。

然后继续按教程安装……


教程第三步的设置 nginx 并获取 Let’s Encrypt SSL 证书的一个报错

在设置nginx证书的第3步时,我的报错如黄字所示:

Suica的回复:关于ufw,这个在Ubuntu系统里自带但在Debian系统中需要手动安装:

apt-get install ufw

然后继续按教程安装……后面就顺利装完了,站点上线了。

如果是安装Mastodon的话,后续还要接着弄外部媒体缓存。不过当我去询问Suica和Kana的时候,都得到了肯定的回复,除非特殊设置,Pleroma不会自动缓存外站的媒体文件,从私人站点的角度来讲,25GB硬盘的VPS完全够用了,所以我也就安心地当一个甩手掌柜了!


安装成功后的各种“必要”操作:

房有了。可是,它是一套清水房欸……没开窗,没刷墙,没地板。赶紧开始搞装修呀!

装修主体思路请参考这篇教程:https://blog.debula.ml/index.php/archives/7/#2.%E5%AE%9A%E5%88%B6 ,我也非常认同作者写的在开始折腾前,建议先完整地看一遍 官方文档(内含更多进阶)。 以及pleroma有非常好用的前端功能——pleroma fe 管理员模式!

我想怎么装呢?我装修了什么呢?像什么全文搜索、数据迁移这些我还不会,慢慢学ing

  • 站点icon(个性化:https://wiki.iroiro.party/doku.php?id=pleroma%E5%B8%B8%E7%94%A8%E9%85%8D%E7%BD%AE%E6%B1%87%E7%BC%96)

  • 站点表情包(个性化:https://blog.debula.ml/index.php/archives/7/#2.%E5%AE%9A%E5%88%B6)

    • 虽然括号网址里面有讲了怎么上传表情包,但是我一开始都没看懂。
    • 综合Suica的讲解,我举一个我的例子:我站里面一个账号注册了Neodb,但是我站里面还没有对应的星星表情,怎么添加呢?
      • 准备两张背景透明的星星png图片,图片总大小不大于50KB
      • 如图:
      • 两张图片分别命名为:star_solid.png(一颗星),star_half.png(半星)
      • 打开Bitvise SSH Client,将两张图从本地文件夹,拖到VPS对应的pleroma存放表情包的文件夹里面
      • 如图:
      • 确定上传成功后,登录pleroma-fe模式,进入setting-emoji,点击Reload emoji重启。
  • 鼠标悬停Pleroma图片上,使图片/表情包放大(个性化,关爱近视人群:https://kyo.iroiro.party/posts/pleroma-largemoji/#pleroma-fe-static)

  • 加入中继

    • 中继的简介、重要性和中文中继推荐:https://mstdn.one/@list/106729842177738917
    • 加不上某些中继,但是又想tl上出现更多嘟文怎么办?
      • Kana告诉我一个办法:对于 Pleroma 实例而言,把 https://Pleroma实例域名/relay 当作中继连接来输入是可以关注这个实例的。
      • 所以,我们可以访问 (https://the-federation.info/pleroma )和(https://fedidb.org/network )这两个fediverse黄页,手动添加自己心仪的pleroma实例。可以一口气关注所有的中文pleroma(因为太少),还可以关注几个头部外文实例(bae.st的人发黄图不选NFSW!)

  • 关掉注册功能(个性化:管理员模式里面换。菜鸟如我决定平稳开站一年再考虑开放注册的问题。因为用户来了就要对人家负责啊,而我还没学过迁移数据,把别人的数据弄丢了怎么办?Σ(っ °Д °;)っ)

(2022/05/01 更新)

  • Pleroma站点主题设计(风格化:https://docs-develop.pleroma.social/backend/configuration/howto_theming_your_instance/ )
    • 又在fediverse中文论坛里面搞了个汉化版:(https://fediverse.eu.org/discussion/27/%E4%BA%94%E5%88%86%E9%92%9F%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E6%BC%82%E4%BA%AE%E7%9A%84pleroma%E4%B8%BB%E9%A2%98 )
    • 这么漂亮的Pleroma主题真的不来一个吗?

  • Pleroma 账号数据备份
    • 如果要使用备份功能, Pleroma 要求该站点配置了发送邮件的功能,并且要知道备份的用户的邮箱:
      • 利用Outlook邮箱配置pleroma邮件服务:(https://kyo.iroiro.party/posts/pleroma-using-postfix-for-email/ )

      • 因为我的vps是 Debian,所以安装的包是

        • sudo apt-get install libsasl2-modules
        • sudo apt-get install postfix
      • 配置邮件成功之后,要给备份的账号补充邮箱信息,就可以按照Kana这条调用Pleroma的备份API (https://im.vpnbanzai.eu.org/u/shykana/h/v63Ytp14j2Tk46pKgt)

      • 配合使用(https://pleromar.vercel.app/ )来查看本地下载的所有备份嘟文