Установка MongoDB в Docker

MongoDB — это бесплатная кроссплатформенная документо-ориентированная программа базы данных NoSQL с открытым исходным кодом.

1. Просмотр доступных версий MongoDB

Перейдите по адресу зеркального репозитория MongoDB:https://hub.docker.com/_/mongo?tab=tags&page=1。

Вы можете просмотреть другие версии MongoDB с помощью сортировки Sort by; по умолчанию используется последняя версия.mongo:latest。

Вы также можете найти другие нужные вам версии в раскрывающемся списке:

Кроме того, мы также можем использовать командуdocker search mongoдля просмотра доступных версий:

$ docker search mongo
NAME                              DESCRIPTION                      STARS     OFFICIAL   AUTOMATED
mongo                             MongoDB document databases ...   1989      [OK]       
mongo-express                     Web-based MongoDB admin int...   22        [OK]       
mvertes/alpine-mongo              light MongoDB container          19                   [OK]
mongooseim/mongooseim-docker      MongooseIM server the lates...   9                    [OK]
torusware/speedus-mongo           Always updated official Mon...   9                    [OK]
jacksoncage/mongo                 Instant MongoDB sharded cluster  6                    [OK]
mongoclient/mongoclient           Official docker image for M...   4                    [OK]
jadsonlourenco/mongo-rocks        Percona Mongodb with Rocksd...   4                    [OK]
asteris/apache-php-mongo          Apache2.4 + PHP + Mongo + m...   2                    [OK]
19hz/mongo-container              Mongodb replicaset for coreos    1                    [OK]
nitra/mongo                       Mongo3 centos7                   1                    [OK]
ackee/mongo                       MongoDB with fixed Bluemix p...  1                    [OK]
kobotoolbox/mongo                 https://github.com/kobotoolb...  1                    [OK]
valtlfelipe/mongo                 Docker Image based on the la...  1                    [OK]

2. Загрузите последний образ MongoDB

Здесь мы загружаем официальный образ последней версии:

$ docker pull mongo:latest

3. Просмотр локальных образов

Используйте следующую команду, чтобы проверить, установлен ли mongo:

$ docker images

На рисунке выше видно, что мы установили последнюю версию (latest) образа mongo.

4. Запустите контейнер

После установки мы можем использовать следующую команду для запуска контейнера mongo:

docker run -d -p 27017:27017 --name my-mongo-container mongo

Описание параметра:

  • -d: Запустите контейнер в фоновом режиме.
  • -p 27017:27017: Сопоставьте порт 27017 хоста с портом 27017 контейнера.
  • --name my-mongo-container: Укажите имя для контейнера, вот оноmy-mongo-container, при необходимости вы можете его изменить.

5. Установка успешно завершена

Наконец, мы можем использоватьdocker psкоманду для просмотра информации о работе контейнера:

# docker ps
CONTAINER ID   IMAGE      ...   PORTS                    NAMES
d53e5d57668b   mongo      ...  :::27017->27017/tcp   my-mongo-container

Вы должны увидеть запущенный контейнер MongoDB с именемmy-mongo-container.

Далее мы можем использовать клиент MongoDB (например, mongo shell) для подключения к запущенному контейнеру MongoDB.

Вы можете использовать следующую команду для подключения к MongoDB:

$ mongosh --host 127.0.0.1 --port 27017
Current Mongosh Log ID: 656d34911ff5455b0c3afdc0
Connecting to:          mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.1.0
Using MongoDB:          7.0.4
Using Mongosh:          2.1.0

For mongosh info see: https://docs.mongodb.com/mongodb-shell/
...

Это подключится к порту 27017 на локальном хосте. Вы можете изменить его в соответствии с портом, проброшенным ранее.

Команда оболочки bash для входа в контейнер MongoDB следующая:

docker exec -it my-mongo-container bash
Не забудьте остановить и удалить контейнеры, когда они больше не нужны. Вы можете использовать следующие команды:
docker stop my-mongo-container
docker rm my-mongo-container
Другие расширения