開発者ドキュメント

Ubuntu16.04にMongoDBをインストールする方法

序章

MongoDBは、最新のWebアプリケーションで一般的に使用されている無料のオープンソースNoSQLドキュメントデータベースです。 このチュートリアルは、本番アプリケーション環境用にサーバー上でMongoDBをセットアップするのに役立ちます。

前提条件

このチュートリアルに従うには、次のものが必要です。

ステップ1—MongoDBリポジトリを追加する

MongoDBはすでにUbuntuパッケージリポジトリに含まれていますが、公式のMongoDBリポジトリは最新バージョンを提供し、ソフトウェアをインストールするための推奨される方法です。 このステップでは、この公式リポジトリをサーバーに追加します。

Ubuntuは、ソフトウェアパッケージがGPGキーで署名されていることを確認することでソフトウェアパッケージの信頼性を保証するため、最初に公式のMongoDBリポジトリのキーをインポートする必要があります。

  1. wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -

キーが正常にインポートされると、次のように表示されます。

出力
OK

次に、MongoDBリポジトリの詳細を追加して、aptがパッケージのダウンロード元を認識できるようにする必要があります。

次のコマンドを発行して、MongoDBのリストファイルを作成します。

  1. echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list

リポジトリの詳細を追加した後、パッケージリストを更新する必要があります。

  1. sudo apt-get update

ステップ2—MongoDBのインストールと検証

これで、MongoDBパッケージ自体をインストールできます。

  1. sudo apt-get install -y mongodb-org

このコマンドは、MongoDBの最新の安定バージョンを含むいくつかのパッケージと、MongoDBサーバー用の便利な管理ツールをインストールします。

次に、systemctlでMongoDBを起動します。

  1. sudo systemctl start mongod

systemctlを使用して、サービスが正しく開始されたことを確認することもできます。

  1. sudo systemctl status mongod
出力
● mongodb.service - High-performance, schema-free document-oriented database
   Loaded: loaded (/etc/systemd/system/mongodb.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2016-04-25 14:57:20 EDT; 1min 30s ago
 Main PID: 4093 (mongod)
    Tasks: 16 (limit: 512)
   Memory: 47.1M
      CPU: 1.224s
   CGroup: /system.slice/mongodb.service
           └─4093 /usr/bin/mongod --quiet --config /etc/mongod.conf

最後のステップは、システムの起動時にMongoDBを自動的に起動できるようにすることです。

  1. sudo systemctl enable mongod

これでMongoDBサーバーが構成されて実行され、systemctlコマンドを使用してMongoDBサービスを管理できます(例: sudo systemctl stop mongodsudo systemctl start mongod)。

ステップ3—ファイアウォールの調整(オプション)

初期サーバーセットアップチュートリアルの手順に従ってサーバーのファイアウォールを有効にすると、インターネットからMongoDBサーバーにアクセスできなくなります。

同じサーバー上で実行されているアプリケーションでローカルでのみMongoDBサーバーを使用する場合は、安全な設定をお勧めします。 ただし、インターネットからMongoDBサーバーに接続できるようにする場合は、ufwでの着信接続を許可する必要があります。

どこからでもデフォルトポート27017でMongoDBにアクセスできるようにするには、sudo ufw allow 27017を使用できます。 ただし、デフォルトのインストールでMongoDBサーバーへのインターネットアクセスを有効にすると、データベースサーバー全体に無制限にアクセスできます。

ほとんどの場合、MongoDBには、アプリケーションをホストしている別のサーバーなど、特定の信頼できる場所からのみアクセスする必要があります。 このタスクを実行するために、明示的に接続を許可される別のサーバーのIPアドレスを指定しながら、MongoDBのデフォルトポートへのアクセスを許可できます。

  1. sudo ufw allow from your_other_server_ip/32 to any port 27017

ufwでファイアウォール設定の変更を確認できます。

  1. sudo ufw status

出力に許可された27017ポートへのトラフィックが表示されます。特定のIPアドレスのみにMongoDBサーバーへの接続を許可することにした場合、許可された場所のIPアドレスがAnywhereの代わりに表示されます。出力の

出力
Status: active

To                         Action      From
--                         ------      ----
27017                      ALLOW       Anywhere
OpenSSH                    ALLOW       Anywhere
27017 (v6)                 ALLOW       Anywhere (v6)
OpenSSH (v6)               ALLOW       Anywhere (v6)

サービスへのアクセスを制限するためのより高度なファイアウォール設定については、 UFW Essentials:Common Firewall RulesandCommandsで説明されています。

結論

MongoDBのインストールと構成に関するより詳細な手順は、これらのDigitalOceanコミュニティの記事にあります。

モバイルバージョンを終了