手順
docker-compose.ymlにphpMyadominのコンテナを追記します。
docker-compose.yml
#docker-compose.ymlのバージョン
version: "3.8"
#docker volumeの設定
volumes:
docker-volume:
#services以下に各コンテナの設定を書く
services:
#Webサーバーのコンテナ
web:
image: nginx:1.18
ports:
- "8000:80"
depends_on:
- app
volumes:
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
- .:/var/www/html
#アプリケーションのコンテナ
app:
build: ./docker/php
volumes:
- .:/var/www/html
#データベースのコンテナ
db:
image: mysql:5.7
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: db_name
MYSQL_USER: db_user
MYSQL_PASSWORD: db_password
MYSQL_ROOT_PASSWORD: root
TZ: "Asia/Tokyo"
volumes:
- docker-volume:/var/lib/mysql
# phpMyadominのコンテナ作成
phpmyadmin:
image: phpmyadmin/phpmyadmin
depends_on:
- db
environment:
- PMA_ARBITRARY=1
- PMA_HOSTS=db
- PMA_USER=db_user
- PMA_PASSWORD=db_password
ports:
- "8080:80"
volumes:
- ./docker/phpmyadmin/sessions:/sessions
コードの下部にある# phpMyadominのコンテナ作成
からが追記する箇所です。
portsを8080に設定しているので、localhost:8080
でphpmyadminの管理画面にアクセスできるように設定しています。
また、volumesにある./docker/phpmyadmin/sessions:/sessions
ではセッション情報をボリュームに設定して永続化するようにします。
補足
参考までに作ってみた環境
↓
ちなみに僕は以下の記事を参考にphp+mysql+nginxの環境を構築しました。
絶対に失敗しないDockerでLaravel+Vueの実行環境(LEMP環境)を構築する方法〜前編〜
絶対に失敗しないDockerでLaravel6.8+Vueの実行環境(LEMP環境)を構築する方法〜後編〜
Docker Composeでphpmyadminを導入する
各々構築したDocker環境のプロジェクトにあるdocker-compose.ymlnに追記していただければ良いと思います。