MongoDB — это популярная документоориентированная база данных, которая используется многими современными веб-приложениями. Поскольку MongoDB это популярная база данных для разработки, Docker также обеспечил поддержку MongoDB.
Мы рассмотрим различные шаги для настройки и запуска контейнера Docker для MongoDB.
Шаг 1. Первым делом извлекаем образ из Docker Hub. Когда вы войдёте в свой аккаунт на Docker Hub, то сможете найти образ MongoDB. Просто введите MongoDB в поле поиска и нажмите на ссылку mongo (official), которая появится в результатах поиска.
Шаг 2. Вы увидите команду Docker pull в деталях хранилища на Docker Hub.
Шаг 3. На хосте Docker используйте команду Docker pull, которая показана выше, чтобы загрузить последний образ mongo из Docker Hub.
Шаг 4. Теперь, когда у нас есть образ Mongo, давайте запустим контейнер MongoDB, который будет нашим примером. Для этого воспользуемся следующей командой:
sudo docker run -it -d mongo
Детальнее рассмотрим запрос:
- Оператор -it используется для запуска контейнера в интерактивном режиме.
- Оператор -d используется для запуска контейнера как демон-процесса.
- И, наконец, мы создаём контейнер из образа Mongo.
Затем вы можете выполнить команду docker ps, чтобы увидеть работающие контейнеры:
Детальнее рассмотрим вывод:
- Название контейнера — tender_poitras, оно может отличаться, поскольку имя контейнера изменяется, когда вы разворачиваете контейнер. Просто обращайте внимание на контейнер, который вы запустили.
- Затем обратите внимание на номер порта, на котором он работает. Он прослушивает порт TCP 27017.
Шаг 5. Теперь развернём другой контейнер, который будет выступать в роли нашего клиента, подключающегося к базе данных MongoDB. Давайте выполним следующую команду:
sudo docker run –it –link=tender_poitras:mongo mongo /bin/bash
Детальнее рассмотрим запрос выше:
- Оператор -it используется для запуска контейнера в интерактивном режиме.
- Теперь мы связываем наш новый контейнер с уже запущенным контейнером-сервером MongoDB. Здесь нужно указать имя уже запущенного контейнера.
- После чего указываем, что хотим запустить контейнер Mongo в качестве нашего клиента, а затем запускаем оболочку /bin/bash в нашем новом контейнере.
Теперь вы окажетесь в новом контейнере.
Шаг 6. Запустите команду env в новом контейнере, чтобы увидеть подробную информацию о том, как подключиться к контейнеру-серверу MongoDB.
Шаг 7. Теперь пришло время подключиться к серверу MongoDB из контейнера клиента. Сделать это можно с помощью следующей команды:
mongo 172.17.0.2:27017
Рассмотрим некоторые моменты запроса:
- Команда mongo — это команда mongo клиента, которая используется для того, чтобы подключиться к базе данных MongoDB.
- IP-адрес и номер порта — это то, что вы получаете, когда используете команду env.
После запуска команды вы будете подключены к базе данных MongoDB.
После чего вы можете запустить любую команду MongoDB в командной строке. В нашем примере мы запустим следующую команду:
use demo
Данная команда используется для переключения на базу данных с названием demo. Если таковая недоступна — она будет создана автоматически.
Поздравляем, вы успешно создали контейнер MongoDB клиента и сервера!
Источник: Docker — Setting MongoDB