
Mysql ローカルテスト環境をDockerで簡単構築!
mysql docker
※ docker や docker-compose はインストール済みで進めます。
1.ディレクトリの作成
適当なディレクトリ(ここではmysql_test)を作成し、その下にmysql と phpmyadmin を作成します。
mysql_test/
├ mysql/
├ phpmyadmin/
2.docker-compose.yml の作成
mysql_test 配下に docker-compose.yml を作成します。
※ volumes の部分でデータの永続化をしています。
※ rootパスワードやポート番号は適宜変えてください。
version: '3.8'
services:
mysql:
image: mysql:latest
container_name: "dev-mysql"
environment:
- MYSQL_ROOT_PASSWORD=root
- TZ=Asia/Tokyo
ports:
- 3306:3306
volumes:
- ./mysql:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: "dev-phpmyadmin"
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
- PMA_USER=root
- PMA_PASSWORD=root
links:
- mysql
ports:
- 8080:80
volumes:
- "./phpmyadmin/sessions:/sessions"
3.docker-compose で起動
※初回はイメージをフェッチしてコンテナを作り上げるので多少時間がかかります。
# 起動
docker-compose up -d
4.画面表示
https://localhost:8080 で画面を表示します。
※ポート番号は docker-compose.yml で設定したものになります。
無事画面が表示されれば完了です。
作業を終了するときは以下のコマンドで停止させます。
# 終了
docker-compose down
いちいちmysqlをインストールする必要も無いですね!
DBやテーブルをガンガン作っていきましょう!
接続するときのホストは 127.0.0.1 になります。
例えば、prismaの設定は以下のようになります。
# prisma.schema
DATABASE_URL='mysql://USERNAME:PASSWORD@127.0.0.1:3306/DBNAME'