フォルダ構成
│ docker-compose.yml
│
└─mysql
Dockerfile
my.cnf
docker-compose.yml
version: "3"
services:
mysql:
build: ./mysql/
volumes:
- ./mysql/db:/docker-entrypoint-initdb.d
image: original_mysql_world
environment:
- MYSQL_ROOT_PASSWORD=mysql
Dockerfile
FROM mysql
EXPOSE 3306
ADD ./my.cnf /etc/mysql/conf.d/my.cnf
CMD ["mysqld"]
my.cnf
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
ビルド
docker-compose build
コンテナ起動
docker-compose up -d
起動したコンテナ(MySQL)にログイン
docker exec -it コンテナ名 bash
※コンテナ名は
docker-compose ps
で表示されたNAME
MySQLに接続
mysql -u root -p -h 127.0.0.1
パスワードを入力
※docker-compose.ymlのMYSQL_ROOT_PASSWORDで指定したパスワード
今回は"mysql"
確認
show databases;
データベースが表示されればOK。
コンテナを抜ける
exit
コンテナ停止
docker-compse stop