はじめに

nuxt3などを用いて開発したアプリケーションについて、github pages, netlify, aws amplify, およびServerless Framework+Lambdaなどを用いてデプロイすることが多いのですが、今回はvpsを用いて公開する機会があり、その備忘録です。

参考

具体的には、Amazon Lightsailとpm2を使用します。

Amazon Lightsailインスタンスの作成

Node.jsのblueprintを選択します。

また3000番ポートを使用するので、ファイアウォールを開放しておきます。

pm2の設定

以下の記事を参考にしました。

https://it-evo.jp/blog/blog-70/

インストール

snupdmoisnustallpm2-g

Nuxt3のダウンロードとビルド

サンプルプログラムをダウンロードします。

scguditb/ihctolnmoaenm/eibihttntapmsi:///github.com/nakamura196/nuxt3-pm2

セットアップ

cndpmnuixnts3t-aplml2

ビルド

nnppmmrruunnbpurielvdiew

localhost:3000 でNuxt3のアプリケーションをご確認いただけます。

pm2を用いて起動する

cvdi//hhoommee//bbiittnnaammii//ecosystem.config.js
m}oda}up]lpnceisww}e}esawxncaa,n.:mdesrttfuibvPNee:cticcosni:OOx[:_aphhletnRDp{mnt:_lPea{TEo'/oc:ooorr:_rdhde[pwlvyEteoes'tSlaI3Nsmm::.iyiln0Voeomn:t0:='/'''nlge0,bcmo]si:1r,'{ilau,:n0vptuxtkt0arns'p{sr0loat,u:u0:dmete,uir/t,1c/'sr0tn,eu0iure0oxvt,0nter,'3ru,-/epimn2d'e,x.mjs',

以下のコマンドで、pm2が起動します。

pm2start/home/bitnami/ecosystem.config.js

デーモン化

今度のTODOとして、以下の記事にもある通り、pm2をsystemctlの管理下に置くことなどが挙げられます。

https://zenn.dev/ukkz/articles/c19541f75754c7#さらにデーモン化する

別の機会に改めてチャレンジしたいと思います。

まとめ

vps(amazon lightsail)環境で、pm2を用いてnuxt3アプリケーションを公開することができました。サーバレスでない環境におけるnuxt3アプリケーションの公開の参考になりましたら幸いです。