Запуск MongoDB с помощью Spring Boot: несколько методов локальной разработки

При работе с приложениями Spring Boot, которые используют MongoDB в качестве базы данных, важно знать, как запустить сервер MongoDB локально в целях разработки. В этой статье блога мы рассмотрим несколько методов локального запуска сервера MongoDB, а также приведем примеры кода для каждого метода. Давайте приступим и начнем!

  1. Метод 1: запуск MongoDB как автономного процесса
    Самый простой способ запустить MongoDB локально — запустить его как автономный процесс. Вот как это можно сделать:

Шаг 1. Установите MongoDB. Сначала убедитесь, что MongoDB установлена ​​на вашем локальном компьютере. Вы можете скачать и установить MongoDB с официального сайта MongoDB.

Шаг 2. Запустите MongoDB: откройте терминал или командную строку и перейдите в каталог установки MongoDB. Затем выполните следующую команду, чтобы запустить сервер MongoDB:

mongod
  1. Метод 2: использование Docker
    Если вы предпочитаете использовать Docker для локальной разработки, вы можете запустить MongoDB как контейнер Docker. Выполните следующие действия:

Шаг 1. Установите Docker. Установите Docker на свой компьютер, следуя официальному руководству по установке Docker.

Шаг 2. Извлеките образ Docker MongoDB. Откройте терминал или командную строку и выполните следующую команду, чтобы получить последний образ Docker MongoDB:

docker pull mongo

Шаг 3. Запустите контейнер MongoDB. Чтобы запустить контейнер MongoDB, выполните следующую команду:

docker run -d -p 27017:27017 --name mongo_container mongo
  1. Метод 3: использование встроенной MongoDB
    Другой удобный способ локального запуска MongoDB — использование встроенного экземпляра MongoDB. Это особенно полезно для интеграционных тестов. Вот пример того, как настроить и запустить встроенный экземпляр MongoDB с помощью библиотеки de.flapdoodle.embed.mongo:

Шаг 1. Добавьте зависимость Maven/Gradle. Включите следующую зависимость в файл сборки вашего проекта:

<dependency>
    <groupId>de.flapdoodle.embed</groupId>
    <artifactId>de.flapdoodle.embed.mongo</artifactId>
    <version>2.2.0</version>
    <scope>test</scope>
</dependency>

Шаг 2. Настройте и запустите встроенный экземпляр MongoDB. В своем тестовом классе используйте следующий фрагмент кода для настройки и запуска встроенного экземпляра MongoDB:

import de.flapdoodle.embed.mongo.MongodExecutable;
import de.flapdoodle.embed.mongo.MongodProcess;
import de.flapdoodle.embed.mongo.MongodStarter;
import de.flapdoodle.embed.mongo.config.MongodConfigBuilder;
import de.flapdoodle.embed.mongo.distribution.Version;
...
MongodStarter starter = MongodStarter.getDefaultInstance();
MongodConfigBuilder mongodConfig = new MongodConfigBuilder()
    .version(Version.Main.PRODUCTION)
    .net()
    .port(27017)
    .build();
MongodExecutable mongodExecutable = starter.prepare(mongodConfig);
MongodProcess mongod = mongodExecutable.start();

Запуск MongoDB в локальной среде разработки имеет решающее значение для разработки приложений Spring Boot. В этой статье мы рассмотрели три различных метода локального запуска MongoDB, включая запуск его как автономного процесса, использование Docker и использование встроенного экземпляра MongoDB. У каждого метода есть свои преимущества, поэтому выберите тот, который лучше всего соответствует вашим потребностям.