# Redis ## Разворачивание СУБД. Для развертывания СУБД Redis вам потребуется выполнить следующие шаги: ### 1. Создать приложение с подходящим тарифом. ```{eval-rst} .. admonition:: Внимание :class: attention Стабильная работа возможна на тарифах не ниже "Начальный". ``` ### 2. На этапе "Загрузка данных" выбрать "Через Git". ![db_create](../img/db_create.png) ### 3. На этапе "Конфигурация" выбрать "db" и "redis" и нажать "Завершить". ![mongo](../img/mongo.png) При развертывании используется образ Docker `redis/redis-stack-server:${meta.toolchain.version}`. Параметр `meta.toolchain.version` необязательный. Если его не указать, будет использоваться последний образ `redis/redis-stack-server:latest`. Так как значение параметра `meta.toolchain.version` является тегом образа redis, можно в качестве его значения использовать произвольный тег из [докер хаба](https://hub.docker.com/r/redis/redis-stack-server/tags). ### 4. Указать необходимые параметры окружения. В разделе "Переменные" у проекта необходимо задать следующие [переменные окружения](../applications/configuration/variables.md): * Для добавления пароля пользователя `default` и безопасного его хранения требуется нажать на кнопку "Создать секрет". В поле "Название" указать `REDIS_ARGS`, а в поле значение вписать `--requirepass <желаемый пароль>`. ```{eval-rst} .. admonition:: Важно :class: warning Придумать достаточно сложный пароль для базы данных, чтобы злоумышленники не смогли получить к ней доступ. ``` При необходимости, можно задать и другие поддерживаемые образом параметры. Более подробно об этих параметрах можно узнать на [странице образа](https://hub.docker.com/r/redis/redis-stack-server). ![mongo](../img/redis_vars.png) ### 5. На странице "Конфигурация" приложения нажать кнопку "Собрать". Если конфигурация оказалась пустой, необходимо снова выбрать "db" и "mongodb" и нажать "применить", после чего "собрать". ## Подключение к БД ```{eval-rst} .. admonition:: Внимание :class: attention Подключение к базе данных возможно только из других проектов, созданных в Amvera. ``` Для подключения к базе данных необходимо использовать `6379` порт и внутренее доменное имя, указанное на странице "Инфо" в формате: `amvera-<имя-пользователя>-run-<транслитерированное-имя-проекта>` ## Развертывание Redis Insight Порядок действий совпадает с развертыванием самой СУБД: ### 1. Создать приложение с подходящим тарифом. ```{eval-rst} .. admonition:: Внимание :class: attention Для работы mongo-express требуется контейнер с тарифом не ниже "Начальный". ``` ### 2. На этапе "Загрузка данных" выбрать "Через Git" ![db_create](../img/db_create.png) ### 3. На этапе "Конфигурация" выбрать "db" и "redis-insight" и нажать "Завершить" При развертывании используется [образ](https://hub.docker.com/r/redislabs/redisinsight) Docker `redislabs/redisinsight:${meta.toolchain.version}` ### 4. Указать необходимые параметры окружения. В разделе "Переменные" у проекта необходимо задать следующие [переменные окружения](../applications/configuration/variables.md): * Переменная `RIAUTHPROMPT` = `true` * RITRUSTEDORIGINS - разрешенные хосты для доступа = `https://<транслитерированное-имя-проекта>-<имя-пользователя>.amvera.io,http://localhost:8001` * Переменная RIAUTHTIMER, установленная в 30 * Переменная RIPROXYENABLE, установленная в `true` ![redis-insight](../img/redis-insight.png) ### 5. На странице "Конфигурация" приложения нажать кнопку "Собрать" Если конфигурация оказалась пустой, необходимо снова выбрать "db" и "redis-insight" и нажать "применить", после чего "собрать". ### 6. В разделе "Настройки" приложения активируем [бесплатное доменное имя](../applications/configuration/network.md#бесплатное-доменное-имя-амвера) или [добавляем свое](../applications/configuration/network.md#свое-доменное-имя). ![db_create](../img/pgadmin_domain.png) ```{eval-rst} .. admonition:: Хитрость :class: hint Чтобы экономить на потреблении проекта с mongo-express рекомендуем ставить его на паузу после окончания работы. ```