--- title: 使用 Docker 构建 Pleroma 实例 tags: - Docker - Pleroma categories: 推荐 abbrlink: e48ebe86 date: 2023-07-24 21:57:00 cover: --- Pleroma 是一个去中心化的社区程序,其基于 ActivityPub 协议。 而 ActivityPub 包括 Mastodon(Pawoo 等)、Misskey(misskey.io 等)、Pleroma 等等。 在这些开源产品中,Pleroma 实机上部署环境步骤复杂繁琐。 但它是对服务器性能要求最低的微博客工具,它的配置要求多低呢? 现在 docker 的出现大大简化了部署的方式,只需要简单三步即可轻松搭建实例。 本文将介绍如何使用 docker 构建 Pleroma 实例。 以宝塔面板为例 ### 先安装docker 在应用商店中查找docker并安装 ### 获取 docker-compose.yml 模板 ``` git clone https://git.pleroma.social/pleroma/pleroma-docker-compose.git cd pleroma-docker-compose ``` 接下来所有操作(除 nginx 配置)如果没有加以说明都在这个目录下进行。 ### 需要修改的内容 打开`./enviroments/pleroma/pleroma.env`,修改其中的配置: ``` DB_USER=pleroma # 数据库用户名 DB_PASS=pleroma # 数据库密码 DB_HOST=pleroma-db # 数据库地址 DB_NAME=pleroma # 数据库名 INSTANCE_NAME=Pleroma # 实例名 ADMIN_EMAIL=admin@ops.pleroma.social # 管理员邮箱 NOTIFY_EMAIL=pleroma+admin@ops.pleroma.social # 通知邮箱 DOMAIN=s.pwq.app # 实例域名 PORT=4000 # 实例运行端口 ``` 只需要修改域名和邮箱即可 打开`./volumes/pleroma/config.exs` 在下面添加 ``` import Config config :pleroma, configurable_from_database: true ``` ### 启动容器 随后运行 ``` docker-compose up -d ``` 启动容器。 ### 添加反向代理 ``` #PROXY-START/ location ^~ / { # 4000 是你的实例容器运行端口,如果你修改过,记得改成你的端口。 proxy_pass http://127.0.0.1:4000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; # proxy_hide_header Upgrade; } ``` ### 创建管理员账户 ``` docker exec -it pleroma ./opt/pleroma/bin/pleroma_ctl user new admin 邮箱 --admin ``` 运行后会出现一个链接,复制在浏览器即可重置密码. ### 修改文件夹权限 `/root/pleroma-docker-compose/volumes/pleroma`下的`uploads`权限设置为`777` 当然如果你用S3协议的对象存储则不需要修改 直接在后台设置S3即可. ### 演示地址 https://chaihu.top