はじめに
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_password
、your_database
、your_user
、your_password
を自分の環境に合わせて変更してください。
4. Dockerコンテナの起動
docker-compose.yml
ファイルを保存したら、以下のコマンドでコンテナを起動します。
cd /var/docker/MySQL
docker-compose up -d
これにより、MariaDB と phpMyAdmin のコンテナがバックグラウンドで起動します。
5. phpMyAdminにアクセスする
コンテナが正常に起動したら、ウェブブラウザを開き、以下のURLにアクセスしてphpMyAdminを使用します。
ログイン画面が表示されたら、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 をセットアップする手順を解説しました。この環境を使用することで、データベースの管理がより簡単かつ効率的になります。トラブルが発生した場合や、さらなるカスタマイズが必要な場合は、お気軽にコメント欄で質問してください。
コメント