Docker

dockerのMySQLのutf8文字コードのイメージを作る


dockerでMySQLのイメージをpullして起動したところ文字コードがlatin1で表示がおかしくなりました。

起動時に文字コードを指定するという方法がありましたが、私の環境では表示されなかったのでmy.cnfでutf8を指定したMySQLイメージを作成することにしました。

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

イメージ作成のためのDockerfileとMySQLのcnfファイルを作成します。

上記2つのファイルがあるディレクトリでbuildします。イメージ名はmysql_utf8で5.7というタグを付与。

docker imagesコマンドで確認するとmysql_utf8イメージが作成されています。
イメージからコンテナを起動します。コンテナ名はtest_mysqlとしています。

起動後、execで稼働中のdockerに接続します。

これでutf8文字コードのMySQLがdockerで動きます。

-Docker
-