Перейти к содержимому
Главная страница » Запуск MySQL в Docker

Запуск MySQL в Docker

Эффективное управление базами данных имеет решающее значение для любого приложения, а такие инструменты, как MySQL и phpMyAdmin, упрощают эту задачу. Однако их настройка может быть громоздкой. Docker Compose предоставляет элегантное решение, позволяющее без особых усилий развернуть эти сервисы. В этой статье мы расскажем вам об использовании конфигурации Docker Compose для настройки MySQL и phpMyAdmin, выделив доступные функциональные возможности и варианты настройки.

Предварительные требования

Прежде чем мы углубимся в работу, убедитесь, что в вашей системе установлен Docker. Если нет, вы можете скачать и установить Docker с https://github.com/3l4un1ck/mysql-phpmyadmin-docker-compose.

Клонирование репозитория

Чтобы не создавать файл docker-compose.yml вручную, клонируйте репозиторий, содержащий данный файл:

git clone https://github.com/3l4un1ck/mysql-phpmyadmin-docker-compose.git
cd mysql-phpmyadmin-docker-compose

Разбираем docker-compose.yml файла

docker-compose.yml Файл в этом репозитории настраивает две службы: MySQL и phpMyAdmin.

version: '3.7'

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
    volumes:
      - ./mysql_data:/var/lib/mysql
    ports:
      - "3306:3306"

  phpmyadmin:
    image: phpmyadmin/phpmyadmin:latest
    restart: always
    depends_on:
      - db
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: your_root_password
    ports:
      - "8080:80"

Сервис MySQL

  • Образ: официальный образ MySQL Docker.
  • Политика перезапуска: гарантирует автоматический перезапуск контейнера.
  • Переменные окружения: Установите пароль root, имя базы данных, имя пользователя и пароль.
  • Тома: монтируют локальный каталог (./mysql_data) для сохранения данных MySQL.
  • Порты: сопоставляет порт 3306 на хосте с портом 3306 в контейнере.

Служба phpMyAdmin

  • Образ: официальный образ phpMyAdmin Docker.
  • Политика перезапуска: гарантирует автоматический перезапуск контейнера.
  • Зависит от: Гарантирует запуск phpMyAdmin после контейнера MySQL.
  • Переменные окружения: Установите пароль хоста MySQL и root.
  • Порты: сопоставляет порт 8080 на хосте с портом 80 в контейнере.

Настройка конфигурации

Измените файл docker-compose.yml так, чтобы задать желаемый пароль root MySQL, имя базы данных, имя пользователя и пароль. Замените your_root_passwordyour_database_nameyour_username, и your_password на свои учётные данные.

Запуск контейнеров

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

docker-compose up -d

Доступ к phpMyAdmin

Как только контейнеры будут запущены, вы сможете получить доступ к phpMyAdmin, перейдя по адресу http://localhost:8080 в вашем веб-браузере. Войдите в систему, используя предоставленные вами учётные данные root-пользователя MySQL.

Пароль мы указывали в конфигурации docker-compose.xml в параметре: MYSQL_ROOT_PASSWORD: your_root_password

Остановка и удаление контейнеров

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

docker-compose down

Эта команда останавливает и удаляет оба контейнера MySQL и phpMyAdmin.

Сохраняемые данные MySQL

Данные MySQL сохраняются на хост-компьютере по адресу ./mysql_data. Это гарантирует, что ваши данные останутся нетронутыми, даже если контейнер будет остановлен или удалён.

Параметры настройки

  • Переменные среды: Легко изменяйте учетные данные MySQL и настройки базы данных.
  • Порты: измените порты в файле docker-compose.yml на те, которые используются по умолчанию (3306 для MySQL и 8080 для phpMyAdmin), если они заняты другими приложениями.
  • Тома: Отрегулируйте настройки тома, чтобы настроить пути хранения данных.

Заключение

Использование Docker Compose для настройки MySQL и phpMyAdmin упрощает процесс управления вашими базами данных. Следуя этому руководству, вы сможете быстро развернуть и настроить эти службы в соответствии с вашими потребностями, обеспечивая плавный и эффективный рабочий процесс. Приятного программирования!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *