Dockerであそぶ(7)PhpMyAdminのインストール
ここ1,2年で注目を集めている仮想化技術の1つ「Docker」について、今更感がありますが試していきたいと思います。
他の仮想化技術との違いや特徴、開発環境として使っていくにはどうすればいいかなどを紹介していきたいと考えています。
これまでの連載
- Dockerであそぶ(1)DockerToolboxのインストール
- Dockerであそぶ(2)Centos7を実行する
- Dockerであそぶ(3)Apacheを使う
- Dockerであそぶ(4)Apacheの設定を変える
- Dockerであそぶ(5)Apache-PHP連携
- Dockerであそぶ(6)Apache-PHP-Mariadb連携
- Dockerであそぶ(7)PhpMyAdminのインストール ← 本記事!
- Dockerであそぶ(8)docker-composeでコンテナをまとめて管理
- Dockerであそぶ(9)AWS EC2でdocker-composeを使う
- Dockerであそぶ(10)docker-machineを使ってAWS(EC2)にDockerホストを構築する
はじめに
今回は、前回までに作成したLAMP環境のMariaDBへPhpMyAdminを使ってアクセスしてみたいと思います。
PhpMyAdmin用の新しいコンテナを作成してMariaDBコンテナとリンクを作成する、Apache-PHPコンテナにPhpMyAdminをダウンロードしてポートを分けるなどいくつか方法は考えられますが、最も簡単な「Docker Hub」で公開されているイメージを使っていきます。
前回のコンテナを再起動する
先だって前回作成した2つのコンテナを再起動しておきましょう。
以下のコマンドを実行すると過去に起動したコンテナが一覧表示されます。既に止まっているコンテナも表示されますので、第2回で作成したコンテナも表示されているかもしれません。
筆者は不要なコンテナを削除していましたので、前回作成した2つのみ表示されています。
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e0d68dc1e6ca my-php "/usr/sbin/httpd -D F" 4 weeks ago Up 11 seconds 0.0.0.0:80->80/tcp my-php1 16f3ed259cd9 mariadb:latest "/docker-entrypoint.s" 4 weeks ago Up 15 seconds 0.0.0.0:3306->3306/tcp my-mariadb1
再起動するときには「CONTAINER ID」もしくは「NAMES」を使います。
まずは、「CONTAINER ID」を使用した場合。この場合は、「CONTAINER ID」を全て入力する必要はありません。起動するコンテナを一意に識別できればよいので、だいたい先頭の3文字~4文字程度を入力すれば十分かと思います。
sudoy@SUDOY-NOTE MINGW64 ~/Documents/docker $ docker restart 16f 16f
次に「NAMES」を使用した場合
sudoy@SUDOY-NOTE MINGW64 ~/Documents/docker $ docker restart my-mariadb1 e0d
「-a」オプションを入力せずに「docker ps」コマンドを実行することで起動中のコンテナのみ表示されます。
sudoy@SUDOY-NOTE MINGW64 ~/Documents/docker $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e0d68dc1e6ca my-php "/usr/sbin/httpd -D F" 4 weeks ago Up 17 seconds 0.0.0.0:80->80/tcp my-php1 16f3ed259cd9 mariadb:latest "/docker-entrypoint.s" 4 weeks ago Up 20 seconds 0.0.0.0:3306->3306/tcp my-mariadb1
PhpMyAdminのインストール
では、PhpMyAdminのコンテナを作成しましょう。
DockerHubのURLはこちら↓
https://hub.docker.com/r/phpmyadmin/phpmyadmin/
上記URLに書いてある通りにコマンドを入力します。変更したのは「name」と「link」オプションです。
それぞれのオプションは第6回で解説していますので、忘れてしまった方は確認してみてください。
sudoy@SUDOY-NOTE MINGW64 ~/Documents/docker $ docker run --name my-phpmyadmin1 -d --link my-mariadb1:db -p 8080:80 phpmyadmin/phpmyadmin
いきなり「docker run」コマンドを実行していますが、起動しようとしているイメージが見つからなかった場合は、自動的に「Docker Hub」からダウンロードを始めます。
上手く起動したら以下のURLへアクセスしてみましょう。
アクセスできました。
ユーザーとパスワードは第6回で、MariaDBコンテナを起動したときに指定したものになります。
本連載どおりにコマンドを実行していれば、root/rootもしくはdocker/dockerです。
簡単すぎて拍子抜けですね。。。
筆者の環境ではイメージのダウンロードも20秒もかからずに終わってしまいました。PhpMyAdminを公式サイトからダウンロードする時間より短いかもしれませんね。
今回はここまでにしておきます。