MERNスタックは、MongoDB、Express、React、Nodeの組み合わせです。それらはすべてJavascriptに基づいており、スタックは最新のWebアプリケーションを構築するために使用されます。これは、フロントエンド(React)、バックエンド(NodeおよびExpress)、およびデータベースコンポーネント(MongoDB)で構成されています。
MongoDB
MongoDBは、NoSQLのファミリーに属するクロスプラットフォームのドキュメント指向データベースプログラムです。 NoSQLは、従来のテーブルベースのSQLデータベース(MySQLおよびPostgreSQL)とは異なり、ドキュメントとコレクションを使用してデータを保存し、バイナリJSON形式で保存します。これにより、ダウンタイムなしでデータベースに大きな変更を加えることができます。
エクスプレス
ExpressJSは、NodeJS用に事前に構築されたWebアプリケーションフレームワークであり、堅牢でスケーラブルなWebアプリケーションの構築に役立ちます。 ExpressJSは、シングルページ、マルチページ、およびハイブリッドの最新のWebアプリケーションを開発するために設計されています。
反応
ReactJSは、レスポンシブユーザーインターフェイスを構築するためのオープンソースのJavaScriptライブラリです。 ReactJSは使いやすく、高速で迅速です。自然でインタラクティブなWebアプリケーションの構築に焦点を当てています。
ノード
NodeJSはオープンソースのJavascriptランタイム環境であり、主にバックエンド操作に使用される高速でスケーラブルなWebアプリケーションを開発でき、Angular、React、VueなどのフロントエンドJavaScriptフレームワークと一緒に使用できます。
このチュートリアルでは、Ubuntu 20.04にJSベースのアプリケーション用のMongoDB、Express、React、Nodeスタックをインストールする方法を示します。
前提条件
- Ubuntu20.04を搭載したサーバー。このチュートリアルでは、4GBのRAMを搭載したマネージドUbuntu20.04VPSの1つを使用します。
- rootユーザーアクセスまたはsudo権限を持つ通常のユーザー。
- 注:このチュートリアルでは、rootユーザーからコマンドを実行する場合は、「sudo」を使用せずにすべてのコマンドを実行します。
ステップ1:SSH経由でログインして更新
rootユーザーとしてSSHを使用してUbuntu20.04VPSにログインします:
ssh sshuser@IP_Address -p Port_number
「sshuser」をsudo権限を持つユーザーまたはrootに置き換えます。さらに、「IP_Address」と「Port_Number」をサーバーのそれぞれのIPアドレスとSSHポートに置き換えます。
ログインしたら、次のコマンドを使用して、サーバーに適切なUbuntu20.04バージョンがインストールされているかどうかを確認できます。
$ lsb_release -a
次の出力が得られるはずです:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.2 LTS
Release: 20.04
Codename: focal
次に、次のコマンドを実行して、サーバーにインストールされているすべてのパッケージが最新の利用可能なバージョンに更新されていることを確認します。
$ sudo apt update
これにより、パッケージ間の互換性が保証されます。
ステップ2:MongoDBをインストールする
MongoDBは、公式のUbuntu20.04ソフトウェアパッケージリポジトリからインストールできます。ただし、MongoDBチームはこのバージョンを維持しておらず、MongoDBのバージョン3.6.8が付属しています。この記事では、利用可能な最新バージョンであるMongoDB4.4をインストールします。ただし、MongoDBの新しいバージョンが公式Webサイトで利用可能かどうかはいつでも確認できます。
UbuntuにMongoDB4.4Community Editionをインストールするには、パッケージ管理システムで使用される公開鍵をインポートする必要があります。次のコマンドでそれを行うことができます:
$ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
$ wget -qO – https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add –
リポジトリを追加した後、ローカルパッケージデータベースを更新できます
$ sudo apt update
以下の2つのコマンドを実行して、MongoDBサーバーをインストール、起動、有効化します。
$ sudo apt install mongodb-org* -y
$ sudo systemctl enable --now mongod
このコマンドを実行すると、MongoDBのステータスを確認できます
$ sudo systemctl status mongod
MongoDBユーザー「admin」のパスワードの作成に進みましょう
$ sudo mongo
Mongoシェルに入ったら、これらのコマンドを実行します。
use admin
db.createUser({user: "admin" , pwd: passwordPrompt() , roles: [{ role: "userAdminAnyDatabase" , db: "admin"}]})
このコマンドを使用して、MongoDBユーザー「admin」の新しいパスワードを作成します。パスワード文字列の一部として「@」記号を使用することはできないことに注意してください。パスワードに「@」を使用すると、Expressアプリケーションからデータベースに接続しようとすると、「MongoParseError:Unescapedat-signinauthority」エラーメッセージが表示されます。
quit()と入力します MongoDBシェルを終了します。
quit()
ステップ3:ExpressJS、React、NodeJSをインストールする
ExpressJSとReactをインストールするには、NPMをインストールする必要があります。 NPMはノードパッケージマネージャーであり、JavaScriptアプリケーションの開発を管理するためのすべてのライブラリとその他のツールを含む依存関係管理ツールです。
NPMをインストールするには、次のコマンドを実行できます:
$ sudo apt install npm -y
インストールを確認するには、次のコマンドでnpmのバージョンを確認します。
$ npm -v
NPMのインストール中に、NodeJSも自動的にインストールされます。したがって、NodeJSをインストールするためにコマンドを呼び出す必要はありません。 NodeJSがインストールされていることを確認するには、次のコマンドを実行できます。
$ node -v
次のステップに進みましょう
Create-React-Appツールのインストール
初心者の場合、 create-react-app Reactアプリケーションのビルドに必要なすべてのツールをインストールするのに役立ちます。 create-react-appをインストールするには、次のコマンドを実行できます:
$ sudo npm install -g create-react-app
それでは、create-react-appを使用してアプリを作成してみましょう
$ create-react-app myfirstapp
このコマンドは、現在の作業ディレクトリに「myfirstapp」という名前のディレクトリを作成します。完了すると、次のようなメッセージが表示されます:
Success! Created myfirstapp at /home/master/myfirstapp Inside that directory, you can run several commands: npm start Starts the development server. npm run build Bundles the app into static files for production. npm test Starts the test runner. npm run eject Removes this tool and copies build dependencies, configuration files and scripts into the app directory. If you do this, you can’t go back! We suggest that you begin by typing: cd myfirstapp npm start
今すぐアプリケーションを開始しましょう
$ cd myfirstapp
$ npm start
下の図に示すようなメッセージが表示されます
これで、画像に示されているリンクまたはhttp:// YOUR_SERVER_IP_ADDRESS:3000を任意のWebブラウザーを使用して開くことができ、次のように表示されます。
ポート300でアプリケーションを停止するには、キーボードのCTRL+Cを押すだけです。
ExpressJS
Reactをインストールした後、ExpressJSのインストールに進むことができます。
$ cd ~ && sudo npm install -g express-generator
ExpressJSを使用して新しいプロジェクトを作成しましょう:
$ express myfirstexpressapp
コマンドを実行すると、メッセージが表示され、ディレクトリ myfirstexpressappに入る必要があります。 アプリケーションを実行します。
$ cd myfirstexpressapp
$ npm start
次に、ブラウザを開いてhttp:// YOUR_SERVER_IP_ADDRESS:3000
に移動します。それでおしまい! MongoDB、Express.js、React.js、Node.jsが正常にインストールされました。これで、MERNスタックを使用してアプリケーションの構築を進めることができます。
もちろん、マネージドLinuxVPSホスティングプランUbuntu20.04 VPSをホストしている場合は、JSベースのアプリケーション用のMERNスタックをUbuntu20.04にインストールする方法を知る必要はありません。その場合は、サポートチームにUbuntu20.04にMERNスタックをインストールするように依頼するだけです。これらは24時間年中無休で利用可能であり、MERNスタックのインストールやその他の要件に対応できます。
PS。 Ubuntu 20.04にMERNスタックをインストールする方法に関するこのブログ投稿を読んで楽しんだ場合は、以下のショートカットを使用してソーシャルネットワークで共有するか、コメントセクションにコメントを残してください。ありがとうございます。