Введение в сервер Mongo в Docker
Сервер документов без контейнера тоже остаётся в системе, когда проект уже снят. Права и обновления тянутся за всей машиной, а не за одной папкой проекта. Контейнер держит программу внутри образа и убирает копию, когда она больше не нужна.
Официальный образ уже содержит сервер и утилиту для запросов. Образ задаёт версию программы и скрипт старта, а описание проекта решает, как поднять сервис и куда положить данные. Так база живёт рядом с кодом, не ставясь в систему целиком.
Первый запуск учебной копии может идти без пароля: процесс остаётся в работе и принимает локальные запросы. Учётную запись root задают отдельно, и только на пустом томе, где ещё нет файлов базы.
Файлы документов и журналов лежат в каталоге данных внутри копии, но для проекта их выносят в том службы. Тогда записи переживают пересоздание контейнера, а образ и файл описания остаются на диске отдельно.
Клиент с компьютера обычно идёт на опубликованный порт, где номер снаружи ведёт к порту сервера внутри. Соседний контейнер в том же описании обращается по имени сервиса, без открытия порта на хосте.
Учебные примеры опираются
на короткий файл
compose.yaml
и образ mongo:8.3.
В нём задают сервис,
том, сеть, порт
и при необходимости пароль root.
Проверки делают короткой
командой внутри
уже работающей копии.