2021年7月24日土曜日

ラズパイにMisskey鯖を構築する《まとめ》

 前回まで15回に分けて記事にしてきたラズパイでのMisskey鯖構築方法を簡潔にまとめます。

・買ったもの

Raspberry Pie 4 model B 4GB RAM バージョン RS (OKdo)版

LANケーブル

マイクロHDMI → HDMI変換ケーブル

有線マウス

ヒートシンクケース

OS入りmicro SDHCカード 32GB

クレーシャル240GB

ORICO 2588C3-G2 VL716 USB3.1 Gen2 USB-C プラケース TYPE-C/C, TYPE-C/A

・自宅に既にあるもの

有線キーボード

HDMI対応モニタ

Windows PC

2021年7月20日火曜日

おひとり様Misskey鯖をラズパイ4で構築する《15》

前回から引き続き、Misskey鯖を公開する方法を探していきます。
この記事を読むとCloudflareで使用できるポート番号は限られているようです。

でも、それなら最初からVPSにMisskeyを構築した方が楽でセキュアだと思いますね・・・。

ここまでかなり調査をしてきたのですが、v6プラスを使用した状況でのラズパイを使ったMisskey鯖公開というのはかなりハードルが高いと感じました。

ラズパイにMisskey鯖を構築するという目標は達成したので、今回の記事で一旦打ち切りにしたいと思います。
今後、簡単に公開出来る手順が見つかったら再開することもあるかもしれません。

のちほど、ラズパイにMisskey鯖を構築する手順を簡潔にまとめてUPしたいと思います。

ここまで助言をしてくださった皆様、ありがとうございました。
私一人の力ではここまで来ることは出来ませんでした。

今回使用したラズパイはファイルサーバにしようと思っています。
ファイルサーバ構築日記も後日書きたいと思います。

2021年7月15日木曜日

おひとり様Misskey鯖をラズパイ4で構築する《14》

 さて前回の続きをやっていきます。

参考サイトはここここここ

前回、作業を一旦ストップした後にMisskeyで情報を頂いたので、それをやってみようと思います。

libvips-devをインストールする必要があるかも、とのことなのでやってみます。

sudo apt install libvips-dev

これでインストールしてみましたが、既に最新バージョンになっているとのこと。

でも、githubでlibvipsについて調査したところ、上記は最新バージョンではないことが判明しました。

この記事を参考に最新バージョンをインストールしてみます。

上記のコマンドを上から叩いていきます。
最新バージョンは2021年7月15日現在で8.11.2なので・・・
wget https://github.com/libvips/libvips/releases/download/v8.11.2/vips-8.11.2.tar.gz

これでいけるかな。

tar zxf vips-8.11.2.tar.gz
cd vips-8.11.2
./configure
make -j4
sudo make install

その後、
cd misskey
git checkout master
yarn install

ここで今までだとエラーメッセージが出ていた気がするのですが、何事もなく完了。
NODE_ENV=production npm run build
これでビルドやり直し。



これがまた表示されたのでOKと。

yarn run init
これでデータベースを初期化。

Misskey起動。さてどうなるか。
NODE_ENV=production yarn start

これはいけたっぽいですね・・・。
起動したMisskeyが表示したアドレスを開いてみたけど、
Cloudflareのエラーが出ているので、ルータの設定を見てみます。
ファームウェアをチェックしたら最新版があったので更新しました。
ルータで80と443のポート開放をしてみたのですが、今のところ変化なしです。

v6プラス接続だとポート開放が上手くいかないという記事があったので、調査してみます。
この記事を参考に進めてみます。
v6プラスでポート変換するには利用可能ポートを割り当てないといけないみたいですね。

変換後のポートにアクセス出来るかこちらでチェック。

上手く行かないので一旦ここでこの記事は終了にします。
次回はポート変換からやります。






2021年7月12日月曜日

おひとり様Misskey鯖をラズパイ4で構築する《13》

 さて今回はいよいよMisskeyのビルドをやっていきます。

参考記事はいつもの通りこちら。

Misskeyがあるディレクトリに移動します。

cd misskey

ビルドを開始します。

NODE_ENV=production npm run build


その結果・・・


こんなにエラーが出てしまいました。


このように表示され、プロンプトが表示されたのでOKなのかNGなのかよく分かりませんね。

Misskeyでこの件について質問したところ、Found 470 errorsというのは、「ビルド出来た」という意味だそうです。


とりあえずホッとしました。

次にデータベースの初期化をします。

npm run init


次にMisskeyを起動します。

NODE_ENV=production npm start

すると・・・



このようなエラーメッセージが表示されて動かなくなりました。
以前にもあったsharpという文言。
この問題を解決しないといけないようです。

sharpのインストールの前に

sudo apt-get install libvips

上記をインストールするという解決策も発見しましたが、既にインストールされていました。

悩んだ結果、以前yarn installがコケていたのが気になって、今の状態でnpx yarn installをやったらスンナリ成功したので、改めてビルドしてみます。

ビルドしたら「found 473 errors」が出て、その後Misskeyを起動も失敗。

色々と検索していたら参考になりそうな記事を発見したので、これを順にやってみます。

公式ドキュメントを読む中でまた参考になりそうな記事を発見したのでこちらも参考に進めてみます。

sudo npm install -g yarn

上記コマンドでyarnをインストールし成功しました。

yarn install --pure-lockfile

上記コマンドでパッケージをインストールしたところ

またこのエラーが出てしまいました。

・・・。

今日は疲れたのでこの辺で一旦区切ります。
次回リトライします。

おひとり様Misskey鯖をラズパイ4で構築する《12》

 さて今回はMisskeyの設定ファイルの作成からやっていきます。

参考記事はいつもの通りこちら。

まず、設定ファイル.config/default.ymlを作成します。

nano .config/default.yml

上記の内容をdefault.ymlに書き込んで、保存して終了。

次にnginxの設定をします。

ルート権限で行います。

Misskey付属の設定ファイルdocs/examples/misskey.nginxを
/etc/nginx/sites-available/misskey.confとして保存し、nanoで開きます。


ルート権限で行うのでcpの前にsudoを付けて実行すると・・・
ファイルやディレクトリがないと言われてしまうので調査。

例では
cp /home/misskey/misskey/docs/examples/misskey.nginx
となっているがhome直下の/misskeyは自分のユーザ名に書き換えないといけなかった。

なので、
cp /home/****/misskey/docs/examples/misskey.nginx /etc/nginx/conf.d/misskey.conf

セキュリティ対策のため*で潰しているが、ここに自分のユーザ名を入れる。

これでコピーは出来た。

nanoで開いて書き換える。

※注意
nano /etc/nginx/conf.d/misskey.confの前にsudoを付けないと書き込み権限が付与されない。

書き換えたら保存して終了。

設定が機能するか確認。

nginx -t

ここもsudoを付けないとパーミッションエラーとなる。


このように表示されたので多分OK。

nginxデーモンを再起動します。

systemctl restart nginx

パスワードを求められるのでRaspberry Piのユーザのパスワードを入力。

ステータスを確認します。

systemctl status nginx

こうなればOK。

今回の記事はここまで。
次回はMisskeyのビルドを行います。

2021年7月8日木曜日

おひとり様Misskey鯖をラズパイ4で構築する《11》

 今回からいよいよMisskeyのインストール作業をやっていきます。

Gitでファイル類を展開します。

二段目はユーザ名で生成されたディレクトリではなく、misskeyというディレクトリを選択する。(一段目でmisskeyディレクトリが生成されたっぽい)
※sudoをつけないこと!!



三段目を入力すると上記のような表示が出るので、master状態になってるということだろう。
「masterに切り替え」というコマンドなので、上記の表示は正しい状態のはず。

次にnpmパッケージをインストールする。

上記を入力すると・・・

yarnのインストールが必要みたいなことを聞かれるので、yでエンター。
しばらくすると・・・
沢山のwarningと・・・


errorが出てきて、コマンド失敗となる。

その下にこんな記事が表示される。

このアップデートをすればいいのかな・・・?

Misskeyで質問してみたらしゅいろ(@syuilo)さんから返信。
npm run rebuildを試してみたところ・・・

エラーになってしまいました。

再度、しゅいろさんから助言を頂いて、npm rebuildを試してみたところ・・・

またエラーになりました。

yarnのインストールに失敗しているようなので、
cd でエンター
pwdで
/home/pipi
上記のディレクトリに移動してから、
sudo rm -rf /home/pipi/misskey

これでmisskeyフォルダを丸ごと削除しました。

これが終わったら
<エラー>npx yarn install

・・・ダメでした。

<エラー>npx yarn add sharp

ダメでした。


★ npm install sharp

エラーが出ませんでした。

★ npm install

この記事も参考にしました。

エラーが出なかったのでOKなのでしょうか。
知人のエンジニアによると、これでビルドの体制は”たぶん”整ったとのことなので、今回はここまでとします。

2021年6月30日水曜日

おひとり様Misskey鯖をラズパイ4で構築する《10》

 今回はCloudFlareの設定から始めていきます。

「サイトを入力してください」のところで取得したドメインを入力して、次の画面で左上に表示された自分のドメインをクリックし、料金プランを選択(今回は無料プラン)する。

DNSレコードについて調査した結果、IPv6の場合はタイプをAAAAに設定し、名前はドメインの上に来るモノ(今回のケースではMisskey鯖の名前になるもの)、アドレスには自分のグローバルIPアドレスを入力すれば良さそうです。

この記事によると、AAAAレコードを作っておけば自動的にIPv4にも変換してくれるみたいですね。


Cloudflareからメールが来てアクティブになったとのこと。
最大48時間掛かる更新がもう終わったと解釈していいのかな?

とりあえず他の設定を進めることにする。

ラズパイにCertbot(Let's Encrypt)の設定。
certbotとCloudFlareプラグインをインストールします。

CloudFlareの情報を記載した設定ファイル/etc/cloudflare/cloudflare.iniを作成します。

dns_cloudflare_emailにはCloudflareに登録しているメールアドレスを入力します。
dns_cloudflare_api_keyには・・・

1.Cloudflareのサイトにログイン
2.ダッシュボードの概要欄の右下にある「APIトークンを取得」をクリック。
3.APIトークンタブの中にあるGlobal API Keyを表示する。
4.Cloudflareのパスワードを入力し、reCAPTCHAを解除し表示する。

これで表示されたAPI Keyをコピペします。

cloudflare.iniを保存して終了します。
パーミッションを600に設定します。


上記のコマンドを入力します。example.tldは自分のドメインに変更します。

メールアドレスの入力を求められたので入力。
コマンドを入力して1,2分待つと上記のようなメッセージが表示されるので「A」を入力してエンター。
その後、上記のようなメッセージが表示されたので「Y」を入力したけど、落ち着いて翻訳してみたら「キャンペーンなどのメールを送っても良いか?」という内容だったので「N」でも良かったかも。

そのあと、IMPOTANT NOTESというメッセージが表示され、「Congratulations!」とあれば成功です。
.pemのファイルが生成されるので、後で使うようなのでパスを保存しておくこと。

cronの設定はインストールと同時に設定されているので不要とのことです。

今回はここまで。
次回からいよいよMisskeyのインストールに入ります。

ラズパイにMisskey鯖を構築する《まとめ》

 前回まで15回に分けて記事にしてきたラズパイでのMisskey鯖構築方法を簡潔にまとめます。 ・買ったもの Raspberry Pie 4 model B 4GB RAM バージョン RS (OKdo)版 LANケーブル マイクロHDMI → HDMI変換ケーブル 有線マウス ...