本文是应网友
anthony084
的要求写的;
什么是 Misskey ?
Misskey
是一个开源、去中心化的社交媒体平台,发帖方式类似于微博和推特。 去中心化则意味着一个Misskey
实例可以与其他Misskey
实例进行相互连接,在Fediverse (ActivityPub)
上,您可以与Mastodon
、PixelFed
、PeerTube
等其他平台上的人互动!
什么是 ActivityPub ?
ActivityPub
是一个去中心社交网络(decentralized social networking
)的交互协议,允许软件项目通过添加ActivityPub
支持,实现拥有完全不同代码库的应用程序之间的可互操作社交网络。
这个协议,老苏之前在写 Funkwhale
时简单介绍过
文章传送门:去中心化开源音乐服务器Funkwhale
安装
用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
这是基于官方的
docker-compose.yml
改出来的,官方原始的的写法需要自己下载代码构建镜像,但是实际上官方已经发布了镜像,而且更新非常频繁
version: "3"services:web:image: misskey/misskey:13.6.1container_name: misskey-webrestart: alwayslinks:- db- redisdepends_on:db:condition: service_healthyredis:condition: service_healthyports:- "3838:3000"volumes:- ./files:/misskey/files- ./.config:/misskey/.config:roredis:image: redis:6.2container_name: misskey-redisrestart: alwaysvolumes:- ./rdata:/datahealthcheck:test: "redis-cli ping"interval: 5sretries: 20db:image: postgres:14container_name: misskey-dbrestart: alwaysvolumes:- ./pdata:/var/lib/postgresql/datahealthcheck:test: "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"interval: 5sretries: 20environment:- POSTGRES_USER=misskey- POSTGRES_PASSWORD=misskey- POSTGRES_DB=misskey
另外还需要一个设置文件 ,原始文件在: https://github.com/misskey-dev/misskey/blob/develop/.config/docker_example.yml,里面有很多注释,有助于你理解各参数的含义,为了方便大家,老苏把注释去掉简化了一下
请将下面的内容保存为 docker.yml
文件
因为包含了中文,记得使用
utf-8
编码格式
# 最终用来访问的 URL
url: http://192.168.0.197:3838/# Misskey服务器应侦听的端口
port: 3000# PostgreSQL 设置
db:host: dbport: 5432# 数据库名db: misskey# 数据库认证,要和 docker-compose.yml 中的设置一致user: misskeypass: misskey# Redis 设置
redis:host: redisport: 6379id: 'aid'proxyBypassHosts:- api.deepl.com- api-free.deepl.com- www.recaptcha.net- hcaptcha.com- challenges.cloudflare.com# Sign to ActivityPub GET request (default: true)
signToActivityPubGet: true
url
:请根据自己的情况修改,如果要加入ActivityPub
肯定是要有公网地址的,建议用域名,有端口也要带上。如果你和老苏一样使用npm
做反代,这里可以先填局域网IP
+ 端口;user
和pass
:要和docker-compose.yml
中的设置一致;
接下来,在 SSH
客户端中执行下面的命令
# 新建文件夹 misskey 和 子目录
mkdir -p /volume2/docker/misskey/{.config,files,pdata,rdata}# 进入 misskey 目录
cd /volume2/docker/misskey
将 docker-compose.yml
放入 misskey
根目录
将 docker.yml
放入 .config
目录
接下来需要初始化数据库
# 初始化数据库
docker-compose run --rm web pnpm run init
运行需要一些时间,没问题的话会看到 Migration
成功的提示
现在可以一键启动了
# 一键启动
docker-compose up -d
运行
当在 misskey-web
容器日志中看到 All workers started
就可以在浏览器中输入 http://群晖IP:3838
开始访问了,默认就支持中文,需要先配置管理账号
登录成功后的主界面
发个帖子
发帖成功
功能就留给大家慢慢摸索吧
反向代理
如果要远程使用,或者加入 ActivityPub
,需要做反代处理,还是以 npm
为例
老苏还是习惯全部勾选
只是随便点了点,暂时没发现有什么异常
参考文档
misskey-dev/misskey: 🌎 An interplanetary microblogging platform 🚀
地址:https://github.com/misskey-dev/misskey
Create your own Misskey instance | Misskey Hub
地址:https://misskey-hub.net/en/docs/install.html#using-docker