はじめに
今更ながらWordPressローカル環境をDockerで構築したので、その際にMySQL WorkbenchからDockerのMySQLに接続した方法についての備忘録。
説明しないもの
- Dockerの使い方
- MySQL Workbenchの使い方
環境
macOS Sierra 10.12
$ docker -v
Docker version 18.06.0-ce, build 0ffa825
docker-compose.ymlの設定
docker-compose.yml
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
ports:
- "4306:3306"
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
volumes:
- "$PWD/wp:/var/www/html"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
基本的にクイックスタートのものを使用。
テーマとプラグインだけマウントしたい場合は下記のようにしている。
docker-compose.yml
volumes:
- ./themes:/var/www/html/wp-content/themes
- ./plugins:/var/www/html/wp-content/plugins
portが3306だとローカルのMySQLとバッティングするので、それ以外のものを設定する。
docker-compose.yml
ports:
- "4306:3306"
接続する前に立ち上げておく。
$ docker-compose up -d
MySQLWorkbenchに接続する
Connection Method: Standard (TCP/IP) Hostname: 127.0.0.1 Username: root password: `MYSQL_ROOT_PASSWORD`のものTest Connection
をクリックして、Successfully made the MySQL connection
が表示されればOK。