Misskey --开源去中心化的社交平台

安装前的准备

注:本机环境为Debain10

必做

Node.js & Yarn

curl -sL https://deb.nodesource.com/setup_14.x | bash -
apt-get install nodejs
#安装Yarn
npm install -g yarn

PostgreSQL

安装

apt install postgresql postgresql-contrib

启动

systemctl start postgresql
systemctl enable postgresql

验证

sudo -u postgres psql -c "SELECT version();"

回显:

                                                     version                                                      
------------------------------------------------------------------------------------------------------------------
 PostgreSQL 11.12 (Debian 11.12-0+deb10u1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
(1 row)

添加数据库和用户

sudo su - postgres 
psql

如出现错误参考后面的话
然后在数据库提示附下执行

CREATE USER misskey WITH PASSWORD 'laoxong_Password';
CREATE DATABASE misskey OWNER misskey;
GRANT ALL PRIVILEGES ON DATABASE misskey TO misskey;
\q

Redis

虽然这样将可能不是很负责,aapanel一键安装
不过可以

apt install redis

可选

Elasticsearch

安装java
apt install default-jdk
安装Elasticsearch
  1. 导入Elasticsearch APT存储库的公钥
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch |  apt-key add -
  1. 添加储存库
sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
  1. 安装 Elasticsearch 引擎
apt update && apt install elasticsearch
  1. 启动并启用该服务
systemctl start elasticsearch.service
systemctl enable elasticsearch.service
  1. 修改Java可占用内存大小
    编辑/etc/elasticsearch/jvm.options文件
    取消-Xms-Xmx的注释,后面分别为初始大小占用内存和最大内存
    例:
-Xms512m
-Xmx4g
安装FFmpeg
apt install ffmpeg

Start

(从Github Copy过来的)

创建 Misskey 用户

adduser --disabled-password --disabled-login misskey

安装 Misskey

  1. 连接至 misskey 用户. su - misskey
  2. 克隆 Misskey 项目的 master 分支。 git clone -b master git://github.com/misskey-dev/misskey.git
  3. 进入 misskey 文件夹。 cd misskey
  4. 检查 最新发布版 标签。 git checkout master
  5. 安装 Misskey 的依赖。 yarn

配置 Misskey

  1. 复制 .config/example.yml 并重命名为 default.ymlcp .config/example.yml .config/default.yml
  2. 编辑 default.yml
    我们选择选项一(用其他软件作为HTTP服务器)
    注释掉44行的
44 #port: 3000 # A port that your Misskey server should listen.

并在57-83行配置数据库和Redis
如果你安装了Elasticsearch,取消88-93行的注释

elasticsearch:
    host: localhost
    port: 9200
    ssl: false
    user: elastic
    pass: changme

构建 Misskey

使用如下的指令构建 Misskey :

NODE_ENV=production yarn build

如果您使用的是 Debian , 您需要安装 build-essential, python 环境包。

如果您仍然遇到有关某些模块的错误,您可以使用 node-gyp:

  1. npx node-gyp configure
  2. npx node-gyp build
  3. NODE_ENV=production yarn build

初始化数据库

yarn run init

完成了!

干得不错!现在您拥有了一个可以运行Misskey的环境啦。

正常启动

只需要 NODE_ENV=production npm start 即可。玩得愉快!

使用 systemd 来启动

  1. 在此处创建一个 systemd 服务: /etc/systemd/system/misskey.service
  2. 编辑它,粘贴如下内容并保存: [Unit] Description=Misskey daemon [Service] Type=simple User=misskey ExecStart=/usr/bin/npm start WorkingDirectory=/home/misskey/misskey Environment="NODE_ENV=production" TimeoutSec=60 StandardOutput=syslog StandardError=syslog SyslogIdentifier=misskey Restart=always [Install] WantedBy=multi-user.target
  3. 重启 systemd 并设置 misskey 服务自动启动: systemctl daemon-reload ; systemctl enable misskey
  4. 启动 misskey 服务: systemctl start misskey

您可以使用 systemctl status misskey 来检查服务是否正在运行。

如何将您的 Misskey 服务器升级至最新版本

  1. git checkout master
  2. git pull
  3. yarn install
  4. NODE_ENV=production yarn build
  5. yarn migrate
  6. 重启您的 Misskey 进程来应用改变。
  7. 尽情享受吧!

如果您在更新时遇到任何问题,请尝试以下操作:

  1. yarn clean 或是 yarn cleanall
  2. 重试升级 (请不要忘记 yarn install

参考

Misskey 设置和安装指南
如何在 Debian 10 上安装 Elasticsearch
如何在Debian 10 Linux上安装Node.js和npm
[为知笔记Docker部署] (没想到吧)
代码先锋网
命令行方式登录PostgreSQL、创建用户和数据库并赋权

后面的话

I Hate Java (记得执行安装Elasticsearch.5)

创建数据库出现错误:

## su: warning: cannot change directory to /home/postgres: No such file or directory

解决

mkdir /home/postgres 
chmod 755 /home/postgres 
sudo cp -a /etc/skel/. /home/postgres

In solitude,where we are least alone