Mastodon・Misskeyのメンテにおいて重要になってくるのが「Node.js」。アプリのビルドをしても「502」になってしまう、`journalctl`でjsエラーをはいてたら真っ先にこいつを疑いましょう。
ということで、今回はそのNode.jsのアップデート方法をメモしておきます。
## Node.jsの管理パッケージnを導入する
上記の方法だと、その場合強制的に安定板の最新版がインストールされます。その場合、「最新のNode.jsだとバグが起きるのでその1・2個前のバージョンでインストールしろ」という機会が多々あるため、バージョン指定でインストールできるnをインストールしておきます。
```
$ npm install -g n
```
npmはすでに入っていると思うので、これですんなりいけるはず。
## Node.jsのアップデート
```
$ n --stable
```
基本は`stable`でおk。stableは安定版(偶数)をインストールします。latestは最新版(奇数)をインストールするので注意。もしバージョンを指定してインストールしたい場合は、下記コマンドでバージョンを指定してインストール。
```
$ n <インストールしたいバージョン>
```
インストールが終わったら下記のコマンドを入力します。
```
$ n ls
$ n
$ n rm <不要なバージョン>
```
`n ls`で今入ってるNode.jsのバージョンを確認、`n`でバージョンの切り替え、`n rm`で不要なバージョンを削除します。これでNode.jsのアップデートは終了です。このあと改めてアップデート(マイグレーション)してみましょう。
## 余談:安定板・最新版のリストを定期的に確認する
Node.jsもリリーススケジュールがあり、定期的に安定板・最新版のメジャーアップデートがあります。そのため定期的にリリーススケジュールを確認しておきましょう。
[Previous Releases | Node.js](https://nodejs.org/en/about/previous-releases)
## 最後に
Node.jsアップデート周りで助言をしてくれたおこめちゃんとタクトさん。この場をもってお礼をしたいと思います。ありがとう!
## 関連記事
- [[WSL2を使ってローカルMastodon鯖を立てる]]
記事はMastodonですが、Misskeyも頑張れば行けるはず。ローカル環境でメンテナンスの練習を行ってからやると吉。
## 参考リンク
- [Misskeyをはじめよう【公式】 (@joinmisskey) | Misskey.io](https://misskey.io/notes/9nle61dbwakv06q5)
- [Node.jsとnpmをアップデートする方法 | Rriver](https://parashuto.com/rriver/tools/updating-node-js-and-npm)
- [nコマンドでnodejsのバージョンを指定する方法 - Qiita](https://qiita.com/ajitama/items/86743cb396588d2cb7b3)
- [Previous Releases | Node.js](https://nodejs.org/en/about/previous-releases)