Thank you for reading this post, don't forget to subscribe!
Иногда требуется запустить СУБД MariaDB на сервере. Ниже описана инструкция, как запустить MariaDB через Docker.
Для начала создайте сеть, в которой будет находится СУБД Mysql со статическим IP адресом. Сеть нужно создать, т.к. стандартная сеть docker не дает возможности установить статический IP адрес у контейнера.
1 |
docker network create -d bridge --subnet=172.20.0.0/16 dockernet -o "com.docker.network.bridge.name"="dockernet" |
Создание хранилища для базы данных.
1 |
docker volume create mariadb_data |
Запуск контейнера Mysql
1 |
docker run -d -e MYSQL_ROOT_PASSWORD=mysqlrootpassword --name mariadb --log-driver=journald --restart=unless-stopped -v mariadb_data:/var/lib/mysql --ip=172.20.0.5 --network="dockernet" mariadb:10.4.8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --sql-mode="" --ft_min_word_len=1 --bind-address=172.20.0.5 |
Параметры —restart:
unless-stopped — будет останавливаться при перезапуске системы
always — будет автоматически запускаться при старте системы
Mysql будет запущен на 172.20.0.5:3306
Пароль mysqlrootpassword поменяйте на другой
Настройте пользователя mysql для удаленного подключения
1 |
docker exec -it mariadb mysql |
Выполните команды:
1 2 3 4 |
SELECT host, user, password FROM mysql.user; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysqlrootpassword'; FLUSH PRIVILEGES; quit |
Перезапустите контейнер
1 2 |
docker stop mariadb docker start mariadb |