ID , 'noindex' , true)){ echo ''; } ?>

DockerでphpMyAdminを使用する手順を紹介するよ

DockerでphpMyAdminを使用する手順

 

 

本記事ではdockerでphpmyadminを使用するための手順を掲載する。

前提としてdocker-composeを使用する。
docker-composeが何か良くわからない方は下記記事を参考にして欲しい。

Docker Composeとは?使い方・メリットを解説

 

具体的には以下のような手順でdockerでphpmyadminを使用できるようにしていく。

dockerでphpmyadminを使用できるようにする手順
  1. docker-composeを作成
  2. dockerを起動
  3. URLへアクセス

 

① docker-composeを作成

まずはdocker-compose.ymlを作成する。

#docker-compose.yml

services:
  mysql:
    image: mysql:5.7
    volumes:
      - ./mysql:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=[mysqlのrootユーザのパスワード]

  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    environment:
      - PMA_ARBITRARY=1
      - PMA_HOST=mysql #mysqlサービス名を指定
      - PMA_USER=root
      - PMA_PASSWORD=[mysqlのrootユーザのパスワード]
    links:
      - mysql
    ports:
      - 4040:80
    volumes:
      - ./phpmyadmin/sessions:/sessions

 

使用するphpmyadminのイメージは「phpmyadmin/phpmyadmin」だ(https://hub.docker.com/r/phpmyadmin/phpmyadmin/)。

 

  • PMA_HOST:mysqlのサービス名を指定する。
  • PMA_USER:phpmyadminにログインするユーザを設定する。
  • PMA_PASSWORD:phpmyadminにログインするユーザのパスワードを設定する。

 

※ユーザ部分は例としてrootユーザを指定しているが、他のユーザを使いたい場合は他のユーザとパスワードを指定して構わない。

 

② dockerを起動

次にdocker-composeコマンドでコンテナを起動する。

docker-compose up -d

 

③ URLへアクセス

以下のURLへアクセスする。

http://localhost:4040/
※ポートはdocker-compose.ymlで指定した値であることに注意)

 

dockerのphpmyadminの画像

phpmyadminが表示されればOK。

 

これで、phpmyadminに慣れ親しんた方は安心・快適にDBの操作を行うことができるだろう。

 

 

おまけ①:上記設定でURLへアクセス時エラーが出る場合

参考までに、上記設定でもURLへアクセスした際に、
「接続できません。設定が無効です。」みたいなエラーがでた場合は、以下のコマンドで解決できる。

docker system prune

んで、再度「docker-compose up -d」でコンテナを立ち上げ、URLへアクセスする。

詳細は忘れたが、docker-compose.ymlを色々いじっていたら上記の症状に出くわし、解決は上記コマンドで行えたので、おまけとして紹介しておく。

 

おまけ②:phpmyadminからインポート時、「phpMyAdmin – エラー Incorrect format parameter」が出た時の対処法

 

下記記事にて、phpmyadminからインポート時、「phpMyAdmin – エラー Incorrect format parameter」が出た時の対処法を紹介している。

 

 

https://hub.docker.com/_/phpmyadmin

https://qiita.com/furu8ma/items/50718efebee20fd24517

 

記事が気に入った方はシェアをお願いします!

1件のコメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です