MySQL 官方 Docker 镜像的使用

Posted traits

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 官方 Docker 镜像的使用相关的知识,希望对你有一定的参考价值。

转载:http://www.cnblogs.com/cfrost/p/6241892.html

首先是pull image,这里我拉取的是5.6.35:

1
sudo docker pull mysql:5.6.35

 拉下来以后大可以按照官方的说明无脑启动,但是外部无法访问,所以绑定端口:

1
sudo docker run --name mysql -p 12345:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.6.35

 试着用客户端连接,成功了,查询mysql.user表发现允许从任何地方用root访问,这特么也太不安全了!

 果断连接到bash:

1
sudo docker exec -it mysql bash

 运行mysql,竟然有!

下面就是基本的操作,收回root权限,建库,开用户……

等等,数据库文件在哪??还有,字符集不是UTF-8??阅读官方文档,得知/etc/mysql/conf.d下可以自定义配置文件,于是乎自己建了一个my.cnf,重新运行:

1
sudo docker run --name mysql -p 12345:3306 -v $DOCKER_RUNTIME/mysql/data:/var/lib/mysql -v $DOCKER_RUNTIME/mysql/conf:/etc/mysql/conf.d -d mysql:5.6.35

 这里顺便改了数据库文件的目录,$DOCKER_RUNTIME是我自己定义的环境变量,各位可以自行指定。

OK~

以上是关于MySQL 官方 Docker 镜像的使用的主要内容,如果未能解决你的问题,请参考以下文章

Docker 镜像加速器

Docker 镜像加速器

使用 mysql 的 Docker 镜像

使用 mysql 的 Docker 镜像

为啥Docker官方镜像不按照“最佳实践”的要求使用USER

在 docker 环境下安装mysql