install(基本手順)

2021/3/15


対象とするラズベリーパイ

install

いろいろと要らないものを削除して、必要なものをインストールする。
#管理者権限で実行
#最初に時刻合わせ
apt install -y chrony
systemctl status chrony;chronyc sources

#使わないものは削除 後々のアップデートで楽をしたい
apt remove -y geany thonny nano vlc libreoffice*
apt -y autoremove
apt update; apt -y upgrade

#あったほうがよいもの
apt install -y fonts-ipa* fonts-vlgothic fcitx-mozc eog gedit
im-config -n fcitx

#Misskeyインスタンスに必要なもの
apt install -y curl postgresql redis-server git build-essential gedit
#systemctl restart postgresql redis-server
#systemctl enable postgresql redis-server
systemctl status postgresql redis-server

Node.js (最新版)をインストール

Node.jsを使いたいが、RaspberryPiOSのパッケージを使うと古いものがインストールされる。
参考までに、RaspberryPiOSの元になっているDebian(Buster)ではNode.js 10.24だった。
Node.js:ブラウザなしでJavascriptを実行する環境であり、Misskey(サーバサイド/インスタンス)ではこれを使うそうです。
node.jsはhttps://nodejs.org/ja/からダウンロード,インストールできるが、 aptリポジトリ(/etc/apt/sources.list.d/nodesource.list)をつくり、aptパッケージとしてインスールする。
#管理者権限で実行
#node.js最新版はhttps://nodejs.org/ja/からダウンロードできます
curl -sL https://deb.nodesource.com/setup_current.x | sudo -E bash -
#curlで問題が発生したときはwgetしてみる
#wget https://deb.nodesource.com/setup_current.x&& sh ./setup_current.x
apt install -y nodejs
node -v
ver15.11(最新版)になったと思う。 安定版ver14.16.0LTSでなくてよいのか?

ユーザをつくる

ユーザMisskeyをつくる。Misskeyはログイン不可(パスワード無効)にしている。su,sudoによりユーザMisskeyとしての処理を行う。
adduser --disabled-password --disabled-login Misskey

データベース設定

#ユーザーpostgresで実行
#データベースを設定する。パスワードは後々必要になる。
su - postgres
psql -c "alter role postgres with password 'hoge'"
#データベースを生成 Misskeyユーザ他いろいろ管理する
createdb mk1;
exit

Misskey本体

#ユーザMisskeyで実行
su - misskey
git clone -b master git://github.com/syuilo/misskey.git
#タイムアウトするときは
#git clone -b master http://github.com/syuilo/misskey.git
cd misskey
git checkout master
.config/default.ymlをつくる。
タイプする。
urlやPostgreSQLの設定でパスワードは適宜変更する。
cat << EOF > .config/default.yml
# ● Misskeyを公開するURL
#url: https://example.tld/
url: http://misskeyB/

# ポートを3000とする。
port: 3000
# ● PostgreSQLの設定。
db:
 host: localhost
 port: 5432
 db : mk1 # 〇 PostgreSQLのデータベース名
 user: postgres # 〇 PostgreSQLのユーザー名
 pass: hoge # ● PostgreSQLのパスワード
# Redisの設定。
redis:
 host: localhost
 port: 6379
# IDタイプの設定。
id: 'aid'
# 最初に登録したユーザーを自動的にadmin(管理者)とするかどうか。
# するなら true , しないなら false 。
autoAdmin: true
EOF
default.ymlをダウンロードしてもよい。
url,pass他はテキストエディタで修正する。
wget -O ~/misskey/.config/default.yml http://www.maibun.org/~nt/technicalnote/raspberryPiOS/Misskey/default.yml

ラズベリーパイ3B/3B+ではこの作業ができない。
詳しくはどうする? Raspberry Pi3Bを参照してください。
#yarnをインストール 10分くらいかかる
#ラズベリーパイ3Bで実行可能
npx yarn install

#Misskeyをビルド メモリが足りないと失敗する
#ラズベリーパイ4B(4GBモデル)が必要 ラズベリーパイ4Bで5分くらい
NODE_ENV=production npm run build

#これ以下はラズベリーパイ3Bで実行可能
#データベースを初期化 (3分くらい)
npm run init
Misskeyインスタンスを起動
cd ~misskey/misskey
NODE_ENV=production npm start
インスタンスが稼働しています。

webブラウザでアクセス

webブラウザからhttp://misskeyB:3000/をアクセス

Raspberry Pi版misskeyインストール方法詳説  https://join.misskey.page/ja/wiki/developers/installation/raspberryPi

Raspberry Pi版misskeyインストール方法詳説  https://misskey-site.com/posts/raspberry-pi版Misskeyインストール方法詳説

Misskey構築の手引き  https://github.com/misskey-dev/misskey/blob/master/docs/setup.ja.md