MongoDB
Разворачивание СУБД
Для развертывания СУБД MongoDB вам потребуется выполнить следующие шаги:
1. Создать проект с подходящим тарифом.
2. Склонировать на свой компьютер подключенный к проекту репозиторий.
Это делается командой:
git clone https://git.amvera.ru/<имя-пользователя>/<транслитерированное-имя-проекта>
Более подробную информацио о работе с репозиторием можно найти в разделе документации Git.
3. Создать конфигурационный yaml файл.
В корневой папке репозитория необходимо создать конфигурационный файл amvera.yml
Конфигурационный файл состоит из секции meta
:
meta:
environment: db
toolchain:
name: mongodb
version: 6.0
При развертывании используется образ Docker mongo:${meta.toolchain.version}
. Параметр meta.toolchain.version
необязательный. Если его не указать, будет использоваться последний образ mongo:latest
.
Так как значение параметра meta.toolchain.version
является тегом образа mongo, можно в качестве его значения использовать произвольный тег из докер хаба.
4. Указать необходимые параметры окружения.
В разделе "Переменные" у проекта необходимо задать имя пользователя и пароль:
- Для добавления имени пользователя необходимо нажать на кнопку "Создать переменную". В поле "Название" указать
MONGO_INITDB_ROOT_USERNAME
, а в поле значение вписать желаемое имя пользователя. - Для добавления пароля и безопасного его хранения требуется нажать на кнопку "Создать секрет". В поле "Название" указать
MONGO_INITDB_ROOT_PASSWORD
, а в поле значение вписать желаемый пароль.
ВАЖНО: Придумать достаточно сложный пароль для базы данных, чтобы злоумышленники не смогли получить к ней доступ.
При необходимости, можно задать и другие поддерживаемые образом парметры. Более подробно об этих параметрах можно узнать на странице образа.
4. Отправить изменения в удаленный репозиторий.
-
git add .
-
git commit -m "initial commit"
-
git push
Подключение к БД
Подключение к базе данных возможно только из других проектов, созданных в Amvera.
Для подключения к базе данных необходимо использовать 27017
порт и внутренее доменное имя, указанное на странице "Инфо" в формате:
amvera-<имя-пользователя>-run-<транслитерированное-имя-проекта>
Развертывание mongo-express
ВАЖНО: для работы mongo-express требуется контейнер с тарифом не ниже "Начальный". На тарифе "Пробный" mongo-express работать не будет из-за недостатка ОЗУ!
Порядок действий совпадает с развертыванием самой СУБД, однако:
-
Файл
amvera.yml
меняется на:meta: environment: db toolchain: name: mongo-express version: 0.49
При развертывании используется образ Docker
mongo-express:${meta.toolchain.version}
-
Требуется указать следующие параметры окружения:
- Переменная
ME_CONFIG_BASICAUTH_USERNAME
- имя пользователя администратора mongo-express - Секрет
ME_CONFIG_BASICAUTH_PASSWORD
- пароль для доступа к mongo-express (не имеет ничего общего с паролем от БД) - ME_CONFIG_MONGODB_AUTH_USERNAME - имя пользователя mongodb (то, что указывалось в переменной MONGO_INITDB_ROOT_PASSWORD`)
- Секрет
ME_CONFIG_MONGODB_AUTH_PASSWORD
- пароль для доступа к mongodb (то, что указывалось в секретеMONGO_INITDB_ROOT_PASSWORD
)
- Переменная
-
Пушим изменение в репозиторий.
Хитрость: Чтобы экономить на потреблении проекта с mongo-express рекомендуем ставить его на паузу после окончания работы.