こんにちは、フルスタックエンジニアのryuです。
今回の記事では、Dockerを使ってphpmyadminとmysqlを簡単に構築する方法を解説します。Dockerでsqlサーバーを構築するとき、phpmyadminを構築すると、DBの管理が簡単になるのでオススメです。
Dockerを使ってphpmyadminとmysqlを簡単に構築する方法¶
DBとphpmyadminの構築方法が分からない・・・
今回の記事では、Dockerを使用してmysqlとphpmyadminの環境を構築する方法を解説します。
Dockerを使えば、簡単に環境を構築することができます!
Dockerの使い方が良く分からないという方は、こちらの記事で解説しております。
/blog/docker-primer
では、早速解説します!
docker-compose.ymlファイルの作成¶
では、早速mysqlとphpmyadminの環境を構築します。
まず、docker-compose.ymlファイルを作成します。
下記のように設定します。
version: '2'
services:
mysql:
image: mysql
volumes:
- "./mysql:/var/lib/mysql"
environment:
- MYSQL_ROOT_PASSWORD=password
phpmyadmin:
image: phpmyadmin/phpmyadmin
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
- PMA_USER=root
- PMA_PASSWORD=password
links:
- mysql
ports:
- 8080:80
volumes:
- /sessions
これで完成です。
記事の後半でdocker-compose.ymlの中身の解説を行います。まずは起動確認をします。
Dockerコンテナを立ち上げる¶
次にDockerコンテナを立ち上げましょう
docker-compose up -d
コマンドを入力すると、イメージをプルしてコンテナを立ち上げます。

phpmyadmin
1分くらいするとコマンドが完了します。

最後に「http://localhost:8080/」にアクセスすると下記の画面のようにphpmyadminの画面が表示されます。
mysqlに接続されていることも分かります。
Dockerを使用するとこのように簡単にDBの環境を作成することができます。ぜひオススメです。
phpmyadminのdocker-compose.yml設定解説¶
ここからは、先ほど設定した「docker-compose.yml」ファイルの設定を解説します。
おさらいですが、設定は下記のようになります。
version: '2'
services:
・・DBの設定 ・・
phpmyadmin:
image: phpmyadmin/phpmyadmin
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
- PMA_USER=root
- PMA_PASSWORD=password
links:
- mysql
ports:
- 8080:80
volumes:
- /sessions
phpmyadmin特有の部分は「environment:」の部分です。ここを解説します。
phpmyadminのenvironmentの設定¶
phpmyadminのenvironmentの設定でsqlサーバーへの接続情報を設定します。
設定は下記のようなものがあります。
- PMA_ARBITRARYー1 に設定すると、任意のサーバーへの接続が許可される
- PMA_HOSTーSQLサーバーのホスト名かIPアドレスを指定
- PMA_PORTーSQLサーバーのポートの設定
- PMA_USERーSQLサーバーに接続するユーザー名
- PMA_PASSWORDーSQLサーバーに接続するユーザーのパスワード
その他の設定はこちらを参考にしてください。
phpmyadmin/phpmyadmin – Docker Hub
Dockerを使ってphpmyadminとmysqlを簡単に構築する方法まとめ¶
今回の記事では、今回の記事では、Dockerを使用してmysqlとphpmyadminの環境を構築する方法を解説しました。
簡単に環境構築できたと思います!
Dockerを使用すると環境構築が簡単になります。
Dockerの使い方をさらに知りたいという方はこちらの講座と参考書がオススメです。
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject\=a; b[a]\=b[a]||function(){arguments.currentScript\=c.currentScript ||c.scripts[c.scripts.length-2];(b[a].q\=b[a].q||[]).push(arguments)}; c.getElementById(a)||(d\=c.createElement(f),d.src\=g, d.id\=a,e\=c.getElementsByTagName("body")[0],e.appendChild(d))}) (window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js","msmaflink"); msmaflink({"n":"さわって学ぶクラウドインフラ docker基礎からのコンテナ構築","b":"","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/51bj0LcD-YL.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B089VZXX63","t":"amazon","r_v":""},"aid":{"amazon":"1841358","rakuten":"1841357"},"eid":"u6ySf","s":"s"});
リンク
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject\=a; b[a]\=b[a]||function(){arguments.currentScript\=c.currentScript ||c.scripts[c.scripts.length-2];(b[a].q\=b[a].q||[]).push(arguments)}; c.getElementById(a)||(d\=c.createElement(f),d.src\=g, d.id\=a,e\=c.getElementsByTagName("body")[0],e.appendChild(d))}) (window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js","msmaflink"); msmaflink({"n":"イラストでわかるDockerとKubernetes Software Design plus","b":"","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/41g+F7WohJL.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08PNMRXKN","t":"amazon","r_v":""},"aid":{"amazon":"1841358","rakuten":"1841357"},"eid":"6UqEP","s":"s"});
リンク
Udemyの講座はこちら