node.js express nginx mongo dbの開発環境について
解決したいこと
node.js express nginx mongo dbという構成で勉強しつつwEBアプリケーションを作成しようと思い、UDEMYやドットインストール、書籍などを参考にプログラミングの勉強をしているのですがプログラミング以前に環境構築やデプロイの方法でつまずいており????の状態で質問させていただきました。
ローカル開発環境の構築とVPSへのデプロイについていくつか質問させていただきます。
現状GitHub ActionでVPSにデプロイという構成が一番良いのかなと思っています?
Q:1
ローカル開発環境でアプリを作成してVPSにデプロイする場合ローカル側にも本番環境と全く同じくWEBサーバー(nginx)もインストールしておくものですか?
※node.jsをリバースプロキシとしてnginxを構成する場合
それともVPSには予めnode.js express nginx mongo dbをインストールした後作成したアプリのみデプロイするのでしょうか?
Q:2
現在はUDEMYなどを参考にVMWARE WORKSTATIONという仮想ツールにubuntu 22.04.03desktopを入れた環境を作成しましたがここでターミナルを開いて各環境をインストールしていっていいのでしょうか?
それともこの仮想環境にホストOS(windows10)からVsCodeでSSH接続やTeraTermでssh接続して作業したほうが良いのでしょうか?
Q:3 ディレクトリ構成
現在ターミナルを開いてls
すると
ubuntu@ubuntu-virtual-machine:~$ ls
snap ダウンロード テンプレート デスクトップ ドキュメント ビデオ ピクチャ ミュージック 公開
となりますがここに
mkdir my-app
cd my-app
でここにnode.js express nginx mongo dbを入れていったら良いのでしょうか?
それとも別の場所ですか?それぞれ入れるディレクトリが決まっているのでしょうか?
ubuntu@ubuntu-virtual-machine:~$ cd /
ubuntu@ubuntu-virtual-machine:/$ ls
bin boot cdrom dev etc home lib lib32 lib64 libx32 lost+found media mnt opt proc root run sbin snap srv swapfile sys tmp usr var
ubuntu@ubuntu-virtual-machine:/$ cd /var/www
ubuntu@ubuntu-virtual-machine:/var/www$ ls
html ここにmydomain.comを作成して
/var/www
にmydomain.comディレクトリを作成して?
Q:4 デプロイについて
VPSにデプロイする際はローカルで開発してGitHub ActionでVPSにデプロイという形がベストですか?
他にいい方法があれば教えていただきたいです、またそれに関する書籍等もありましたら教えていただきたいです。
UDEMYの動画も7本ほど関係ありそうなのを購入してみてはいるのですがどれもAWSやheroku,renderを利用するもので
VPSに関するものは何故ないんだろ?
■■■■■■■■■■■■■■■■■■■■■■■
全部でなくても構いません一つだけでもご教授いただけましたら幸いです。
おそらく私自身の理解が???で質問自体おかしなこと聞いているとは思いますがこれでも一応自分なりに調べたりして理解しようとは努力していますのでご容赦くださいませ、、、