こんにちは、現役エンジニアの inno_tech です。
Webアプリケーションを公開するために無料でMongoDB環境を構築する方法をお探しでしょうか?
今回は、MongoDB Atlasをセットアップ~Node.jsからアクセスするサンプルコードまで解説したよ~
本記事は、Node.js v16.16.0 で動作確認しています。
無料でデータベース環境を用意したい
Webアプリケーションを世の中に公開したい、でもサーバーやデータベースのコストはとにかく下げたい、という個人開発者は多いのではないでしょうか。
そこでおすすめなのが、無料プランがあるクラウド型データベース MongoDB Atlas です。サーバーは共有のものとなりますが、クレジットカードの登録もなく、無料で使用できます。
また、MongoDB開発環境の構築が面倒な場合も、インストールなしで手軽に利用できるのでおすすめです。
さっそく、MongoDB Atlasの始め方を解説していきます。
MongoDB Atlas のアカウントを作成
はじめに、 MongoDB Atlasのアカウントを作成します。 MongoDB のページにアクセスし、右上にある「Try Free」をクリックします。
アカウント登録ページが開くので、必要な情報を入力し、「Create your Atlas account」をクリックします。(Googleアカウントで登録してもOKです。)
アカウントに登録したメールアドレスに、以下のようなメールが届くので「Verify Email」をクリックし、アカウントを認証します。
以下のような画面が表示されれば、アカウント登録が完了です。
続いて、MongoDB Atlas上に自分用のデータベースを作成します。
MongoDB Atlas で自分用データベースを構成
作成したアカウントを利用して、MongoDB Atlasにログインします。( ログインURL )
ログイン後、作成するプロジェクトに関する質問に回答し、Finish をクリックします。
今回は、Node.jsからMongoDBにアクセスするよ!
続いて、料金プランの選択画面になるので、 「Shared(FREE)プラン」を選択します。
すると、データベースの基本設定が表示されます。特にこだわりがなければ、AWS / Tokyo リージョン(デフォルト) を選んでおけばよいでしょう。
次に、データベースアクセス時のセキュリティ設定を行います。今回は「ユーザー名/パスワード認証」を使うので、ユーザー名とパスワードを入力し、Create User をクリックして下さい。
作成したアカウントは忘れないように注意!
続いて、データベースに対する接続制限の設定が開きます。ここでは、特定のIPからしか接続を許可しないというような設定が可能です。
今回は、「0.0.0.0(すべて許可)」を設定し、Add Entry をクリックします。
下の画像のように、アクセスリストが追加されたら、「Finish and Close」をクリックします。
以上で、設定が完了したというメッセージが表示されるので、「Go to Databases」をクリックすれば、データベースの作成は完了です。
データベースの準備ができました。続いて、Node.jsプロジェクトからMongoDB Atlasに接続する方法を解説します。
データベース接続用URLを確認
データベースと接続するには、データベース接続用URLを確認する必要があります。
MongoDB Atlas上のデータベース画面から、「Connect」をクリックします
すると、接続形態を選択する画面に変わります。今回は Node.js からアクセスするので「Connect your application」をクリックします。
すると、データベースへの接続URLが表示されるのでこれをコピーします。
最後に、データベース接続用URLを使用して、Node.jsからアクセスしてみます。
MongoDB Atlas にアクセス
Node.jsプロジェクトを準備する
今回はNode.jsプロジェクトを使用します。Node.jsプロジェクトの作り方はこちらの記事にまとめているので、確認の上、プロジェクト環境を準備してください。
mongooseをインストール
MongoDBアクセス用のパッケージとして「mongoose」を使用します。ターミナルから以下のようにインストールします。
// mongoose の導入
npm install mongoose --save
MongoDBとの接続テスト
mongooseを利用して、Node.js から クラウド上のMongoDBにアクセスします。以下にサンプルコードを掲載します。
import mongoose from "mongoose";
// コピペした接続用URL
// [username], [password], [dbname]は各自合わせる
mongoose.connect("mongodb+srv://[username]:[password]@cluster0.uezzo0k.mongodb.net/[dbname]?retryWrites=true&w=majority")
.then( () => {
console.log( "DBに接続しました." );
}).catch( () => {
console.log( "DBの接続に失敗しました." );
});
// アプリケーションを起動して、「DBに接続しました.」が表示されればOK.
コピーした接続用URLには「dbname」がないので追加してね
JavaScriptファイルを実行し、「DBに接続しました.」が表示されれば接続成功です。以上で、MongoDB Atlasを使った開発環境が整いました。
MongoDB用クライアント
MongoDB用クライアントは MongoDB Compass がおすすめです。MongoDB内のコレクションやドキュメントをGUIで閲覧・操作可能な便利なアプリケーションです。
インストール方法や使い方は こちらの記事にまとめたので参考にしてください。
まとめ
今回のまとめです。
- MongoDB Atlasは、無料プランがあるクラウド型データベース.
- MongoDB Atlas の アカウント作成方法~Node.jsのサンプルコードによる接続方法を解説.
- クラウド型でインストール不要なのでローカル開発環境としてもおすすめ.
このミステリーがすごい!2022年版で国内編1位に選出された注目の本が気になる方はこちら。
参考になったでしょうか。
ほかにも役立つ情報が他のページにあるかもしれないのでお見逃しなく!
ご覧になるかはあなた次第です!
この記事がイイねと思ったら、Twitterフォロー か にほんブログ村のどちらかしてくれたら嬉しいよ!
コメント / ご要望