Pull to refresh

Как развернуть mysql в phpmyadmin с помощью docker

Level of difficultyEasy
Reading time2 min
Views4.5K

Для развёртывания phpMyAdmin с MySQL в Docker, вам нужно создать docker-compose.yml файл, который будет содержать конфигурацию для обоих контейнеров.

Почему нельзя просто скачать MySQL WORKBENCH и работать так же локально?

При работе с MySQL WORKBENCH на компьютерах с процессорами M1 и так далее, у вас может возникнуть проблемы с внешним интерфейсом программы, например

MySQL WORKBENCH VER: 8.0.36
MySQL WORKBENCH VER: 8.0.36

А если брать конкретнее, то:

MySQL WORKBENCH VER: 8.0.36
MySQL WORKBENCH VER: 8.0.36

Пункт 1

Для начала вам нужно иметь уже контейнер с развёрнутой базой данных mysql.

Чтобы его создать нужно ввести команду:

docker run --name mysql-test 
-v /Users/northbug/Development/testing/dbases:/var/lib/mysql 
-p 33060:3306 
-e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.0.36

Примечание 1

Вам нужно заменить путь к локальному каталогу, который вы мэпите внутрь контейнера с СУБД. Можно заменить название mysql-test и пароль my-secret-pw.

Примечание 2

Если контейнер не запустится, т.е. не будет выведен при запуске команды docker ps -a, то может потребоваться изменить порт, указываемый с помощью ключа -p. Например, так: -p 63306:3306

Для просмотра работающих контейнеров:

docker ps

Для просмотра всех контейнеров:

docker ps -a

Обращайте внимание на id, name.

Для остановки контейнера:

docker stop <id или name контейнера>

id можно указывать частично (первые 3-4 символа).

Для запуска контейнера:

docker start <id или name контейнера>

id можно указывать частично (первые 3-4 символа).

Эти же действия указываются через Docker Desktop (кнопка "Play" / "Stop")

Чтобы удалить работающий контейнер необходимо его остановить или вызвать удаление с ключом -f

Например:

docker rm -f <id или name контейнера>

или

docker stop <id или name контейнера>

Пункт 2

Далее нужно создать файл docker-compose.yml в проекте с содержанием:

version: '3'
services:
db:
image: mysql:latest
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_root_password
MYSQL_DATABASE: your_database_name
MYSQL_USER: your_username
MYSQL_PASSWORD: your_password
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
restart: always
ports:
- "8080:80"
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: your_root_password

Поменяйте your_root_password, your_database_name, your_username и your_password на ваши значения.

Пример:

version: "3"
services:
db:
image: mysql:latest
restart: always
environment:
MYSQL_ROOT_PASSWORD: 1324
MYSQL_DATABASE: hello_phpmyadmin
MYSQL_USER: alexander
MYSQL_PASSWORD: 1324
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
restart: always
ports:
- "8080:80"
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: your_root_password

После создания docker-compose.yml файла, выполните следующие команды в директории с файлом:

docker-compose up -d

Откройте браузер и перейдите по http://localhost:8080 или http://your_server_ip:8080 для доступа к phpMyAdmin. Введите учётные данные для подключения к MySQL.

В результате всей проделанной работы у вас должно получиться следующее:

А в консоли:

В phpmyadmin есть все функции, которые есть в MySQL WORKBENCH, поэтому, если у вас нету возможности работать на компьютере не на процессоре Apple Silicon, то он может является неплохой альтернативой.

Only registered users can participate in poll. Log in, please.
Помогла ли вам статья?
100% Да, помогла1
0% Нет, не помогла (Напишите в комментариях, почему)0
1 user voted. Nobody abstained.
Tags:
Hubs:
Total votes 10: ↑3 and ↓70
Comments11

Articles