Spec-Zone.ru › MariaDB

Справочник по контейнерам MariaDB

  • Получение образов
    Образы можно найти на MariaDB Docker Hub.
    Чтобы получить список образов, выполните
$ docker images -a
  • Создание сети
$ docker network create mynetwork

Рекомендуется создавать Docker сеть и подключать контейнер к сети.

  • Запуск контейнера с параметрами сервера
    Чтобы запустить контейнер в фоновом режиме с образом MariaDB сервера, выполните:
$ docker run --rm --detach \
--env MARIADB_ROOT_PASSWORD=sosecret \
--network mynetwork \
--name mariadb-server \
mariadb:latest

Кроме того, также доступны переменные окружения.

  • Получение списка работающих контейнеров (укажите флаг -a, если вы хотите увидеть все контейнеры)
$ docker ps
CONTAINER ID   IMAGE            COMMAND                  CREATED          STATUS          PORTS      NAMES
ad374ec8a272   mariadb:latest   "docker-entrypoint.s…"   3 seconds ago    Up 1 second     3306/tcp   mariadb-server
  • Запуск клиента из контейнера

Чтобы запустить клиент mariadb внутри созданного контейнера и выполнить определенные команды, выполните следующее:

$ docker exec -it mariadb-server mariadb -psosecret -e "SHOW PLUGINS"
  • Просмотр логов из контейнера
$ docker logs mariadb-server

В логах можно найти информацию о статусе сервера, плагинах, сгенерированных паролях, ошибках и т. д.

  • Перезапуск контейнера
$ docker restart mariadb-server
  • Выполнение команд внутри контейнера
$ docker exec -it mariadb-server bash
  • Использование тома для указания параметров конфигурации
$ docker run --detach --env MARIADB_USER=anel \
  --env MARIADB_PASSWORD=anel \
  --env MARIADB_DATABASE=my_db \
  --env MARIADB_RANDOM_ROOT_PASSWORD=1 \
  --volume $PWD/my_container_config:/etc/mysql/conf.d:z \
  --network mynetwork \
  --name mariadb-server1 \
   mariadb:latest 

Можно указать пользовательские файлы конфигурации через том /etc/mysql/conf.d во время запуска контейнера.

  • Использование тома для указания прав во время запуска контейнера
$ docker run --detach --env MARIADB_USER=anel\
  --env MARIADB_PASSWORD=anel \
  --env MARIADB_DATABASE=my_db \
  --env MARIADB_RANDOM_ROOT_PASSWORD=1 \
  --volume $PWD/my_init_db:/docker-entrypoint-initdb.d \
  --network mynetwork \
  --name mariadb-server1 \
   mariadb:latest 

Пользователь, созданный с переменными окружения, имеет полные права только на MARIADB_DATABASE. Чтобы переопределить эти права, можно указать права пользователю или выполнить любые SQL-запросы из файла хоста в docker-entrypoint-initdb.d. В каталоге local_init_dir мы можем найти файл, созданный так:

$ echo "GRANT ALL PRIVILEGES ON *.* TO anel;" > my_init_db/my_grants.sql

См. также

  • Установка и использование MariaDB через Docker
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проверяется предварительно MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают мнения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/mariadb-container-cheat-sheet/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API