2.2 Установка MySQL Router с Docker
Фреймворк Docker поддерживает простую установку и настройку MySQL Router. Этот раздел описывает, как использовать образ MySQL Router Docker.
Перед использованием образа MySQL Router Docker необходимо установить Docker на вашей системе. Инструкции см. в разделе Установка Docker.
Необходимо либо запускать команды docker с sudo, либо создать группу пользователей docker и добавить в нее всех пользователей, которые хотят запускать команды docker. Подробности см. здесь. Поскольку контейнеры Docker всегда выполняются с правами root, вы должны понимать поверхность атак демона Docker и должным образом смягчать связанные с этим риски.
Основные шаги для развертывания MySQL Router с Docker
Образы MySQL Docker, поддерживаемые командой MySQL, созданы специально для платформ Linux. Другие платформы не поддерживаются, и пользователи, использующие эти образы MySQL Docker на них, делают это на свой страх и риск.
Загрузка образа MySQL Router Docker
Загрузка образа сервера в отдельном шаге не является строго необходимой; однако выполнение этого шага перед созданием контейнера Docker гарантирует, что ваш локальный образ является актуальным. Для загрузки образа MySQL Community Edition выполните следующую команду:
$> docker pull container-registry.oracle.com/mysql/community-router:tag
tag — метка версии образа, который вы хотите получить (например, 8.0). Если : опущено, используется метка taglatest, и загружается образ последней GA-версии MySQL Community Router. Полный список тегов доступных версий см. в Oracle Container Registry и перейдите к образу MySQL Router в репозитории MySQL.
Таблица 2.1 Переменные
| Переменная | Описание |
|---|---|
MYSQL_HOST | Обязательно. Хост MySQL для подключения. |
MYSQL_PORT | Обязательно. Порт прослушивания MySQL-сервера. |
MYSQL_USER | Обязательно. Пользователь MySQL для подключения. |
MYSQL_PASSWORD | Обязательно. Строка. Пароль пользователя MySQL. |
MYSQL_INNODB_CLUSTER_MEMBERS | Необязательно. Целое число. Дождаться, пока будет онлайн указанное количество экземпляров кластера. |
MYSQL_CREATE_ROUTER_USER | Необязательно. Булево. Создать ли новую учетную запись для MySQL Router для использования при запуске. Значение по умолчанию включено (1). Установите в 0 (ноль), чтобы отключить. |
MYSQL_ROUTER_BOOTSTRAP_EXTRA_OPTIONS | Необязательно. Список дополнительных параметров командной строки, применяемых во время инициализации. |
Запуск в контейнере требует работоспособного кластера InnoDB. При предоставлении сценарий запуска ожидает, пока указанный хост mysql запустится, кластер InnoDB будет иметь заданное число членов, определенное MYSQL_INNODB_CLUSTER_MEMBERS, и затем использует предоставленный хост для инициализации. См. Раздел 3.1, «Инициализация MySQL Router».
Например:
$> docker run \
-e MYSQL_HOST=localhost \
-e MYSQL_PORT=3306 \
-e MYSQL_USER=mysql \
-e MYSQL_PASSWORD=mysql \
-e MYSQL_INNODB_CLUSTER_MEMBERS=3 \
-e MYSQL_ROUTER_BOOTSTRAP_EXTRA_OPTIONS="--conf-use-socket --conf-use-gr-notification" \
-ti container-registry.oracle.com/mysql/community-router
Для использования определенной версии MySQL Router добавьте тег к значению -ti. Например: -ti
container-registry.oracle.com/mysql/community-router:9.0.0 для MySQL Router 9.0.0. Для использования последней версии не добавляйте тег.
Проверка состояния:
$> docker ps
Дополнительные сведения см. в Oracle Container Registry и перейдите к образу MySQL Router в репозитории MySQL.
© 2025 Oracle
Licensed under the GPLv2 License.