phpMyAdmin付きのMySQL(MariaDB)環境を5分で構築する方法【Docker】

はじめに

Docker にphpMyAdmin付きのMySQL(MariaDB)環境を5分で用意します。
データベースと設定ファイルは、ホスト側のディレクトに永続化されます。

前提条件

  • Docker がすでにインストールされていて、基本的な知識がある方
  • Ubuntuや、Windows の基本操作ができる方
  • 自分でデータベースを構築し管理したい方
  • phpMyAdmin を使用してウェブベースでデータベースを管理したい方

Bash等での操作を前提としているため、WindowsではWSL環境で作業してください。

1. 事前準備

まず、Dockerがインストールされていることを確認してください。もしインストールされていない場合は、以下のコマンドでインストールを行います。

sudo apt update
sudo apt install docker.io -y
sudo apt install docker-compose -y

DockerとDocker Composeがインストールされたら、次に進みましょう。

2. 必要なディレクトリを作成する

MariaDB用のデータと設定ファイルを永続化するために、以下のディレクトリを作成します。

sudo mkdir -p /var/docker/MySQL/data
sudo mkdir -p /var/docker/MySQL/config

これらのディレクトリを作成することで、コンテナが再起動されてもデータが消えずに保持されます。

3. Docker Compose ファイルを作成する

次に、docker-compose.yml ファイルを作成します。このファイルは、MariaDBとphpMyAdminの設定を定義します。

nano /var/docker/MySQL/docker-compose.yml

以下の内容をコピーして、ファイルに貼り付けます。

version: '3.1'

services:
  mariadb:
    image: mariadb:latest
    container_name: mariadb-container
    ports:
      - "13306:3306"
    volumes:
      - ./data:/var/lib/mysql
      - ./config:/etc/mysql/conf.d
    environment:
      MARIADB_ROOT_PASSWORD: your_root_password
      MARIADB_DATABASE: your_database
      MARIADB_USER: your_user
      MARIADB_PASSWORD: your_password
    restart: always

  phpmyadmin:
    image: phpmyadmin/phpmyadmin:latest
    container_name: phpmyadmin-container
    ports:
      - "13887:80"
    environment:
      PMA_HOST: mariadb
      PMA_PORT: 3306
      MYSQL_ROOT_PASSWORD: your_root_password
    restart: always

重要your_root_passwordyour_databaseyour_useryour_password自分の環境に合わせて変更してください。

4. Dockerコンテナの起動

docker-compose.yml ファイルを保存したら、以下のコマンドでコンテナを起動します。

cd /var/docker/MySQL
docker-compose up -d

これにより、MariaDB と phpMyAdmin のコンテナがバックグラウンドで起動します。

5. phpMyAdminにアクセスする

コンテナが正常に起動したら、ウェブブラウザを開き、以下のURLにアクセスしてphpMyAdminを使用します。

http://localhost:13887

ログイン画面が表示されたら、docker-compose.yml で設定したユーザー名とパスワードを使用してログインしてください。

6. 外部ホストからの接続

MariaDBはホストOSのポート13306で公開されています。
外部ホストから接続したい場合は、以下のコマンドを使用します。

mysql -u your_user -p -h your_host_ip -P 13306 your_database

your_host_ip には、MariaDBコンテナが稼働しているホストのIPアドレスを入力してください。

7. クリーンなデータベースの再構築

もしデータベースやユーザーを変更したい場合、
以前のデータを削除してから新しい設定で再構築できます。

docker-compose down
sudo rm -rf /var/docker/MySQL/data/*
sudo rm -rf /var/docker/MySQL/config/*
docker-compose up -d

おわりに

今回の記事では、Ubuntu 22.04 LTS 環境で Docker を使用して MariaDB と phpMyAdmin をセットアップする手順を解説しました。この環境を使用することで、データベースの管理がより簡単かつ効率的になります。トラブルが発生した場合や、さらなるカスタマイズが必要な場合は、お気軽にコメント欄で質問してください。

コメント

タイトルとURLをコピーしました