DockerでMySQLを使う
ファイルの準備
Docker
└ docker-mysql
└Docker-Compose.yml
└ mysql
├ Dockerfile
├ my.cnf
└ DB
└world.sql
Docker-Compose.yml
version: "3.7"
services:
mysql:
build: ./mysql/ #Dockerfileからビルドすることを示す
volumes:
- ./mysql/db:/docker-entrypoint-initdb.d #初期データをマウントする場所
image: original_mysql_world # イメージの名前
platform: linux/amd64 # M1Mac
environment:
- MYSQL_ROOT_PASSWORD=root #コンテナ内のMySQLを起動する際のパスワードを設定
参考サイト http://docs.docker.jp/get-started/08_using_compose.html?highlight=mysql
Dockerfile
#使うDockerイメージ
FROM mysql
#ポートを開ける
EXPOSE 3306
#MySQL設定ファイルをイメージ内にコピー
ADD ./my.cnf /etc/mysql/conf.d/my.cnf
#docker runに実行される
CMD ["mysqld"]
my.cnf
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
world.sql
-- MySQL dump 10.13 Distrib 5.1.51, for pc-linux-gnu (i686)
--
-- Host: 127.0.0.1 Database: world
-- ------------------------------------------------------
-- Server version 5.1.51-debug-log
/*以下Databaseの内容が記載される
構築・起動
# イメージのビルド
$ Docker-Compose build
# コンテナの作成
$ Docker-Compose up -d
# 起動したコンテナの確認
$ docker ps
# 起動したコンテナにログイン
$ docker exec -it <NAME> bash -p
# MySQLを起動
$ mysql -u root -p -h 127.0.0.1
# コンテナの終了
$ docker-compose down
# ボリュームの削除
$ docker-compose down --volumes
ディスカッション
コメント一覧
まだ、コメントがありません