使用 mysql 的 Docker 镜像

使用 mysql 的 Docker 镜像

前言

之前搞了很多都是手工在操作系统的镜像中安装使用 mysql,作为自己折腾也就算了,作为实际使用实为不妥:Docker最重要的特性就是可扩展性,把各种程序都放在一个容器里还如何扩展(当然如果用来统一开发、测试和线上环境还是可以的)。因此再来记录一下直接使用 mysql 的官方 Docker 镜像,以免回头本末倒置,瞎折腾会了,正经的使用却不会了,虽然非常简单。

1. 下载 mysql 的 Docker 镜像

使用 docker pull mysql 命令,具体的tag名称可以去 Docker Hub 的 mysql 页面 上查询。

2. 启动命令

其实 Docker Hub 的 mysql 页面已有相关的说明了,但还应该加入端口映射:

docker run --name some-mysql -p 33060:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

3. 其它思考

官方给的原来启动命令为(并没有端口的映射):

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

连接命令也有点不同:

docker run -it --network some-network --rm mysql mysql -hsome-mysql -uexample-user -p

大概是启动一个容器,然后用里面的连接程序去连接别的容器QAQ,其中 --rm 表示容器推出后自动删除,多用于测试, --network 表示可以手工设定网络。在我本地需要执行的命令为:

docker run -it --rm mysql mysql -h 172.17.0.2 -uroot -p

官方给的 mysql 是容器的名称,尝试后发现会报错:

ERROR 2005 (HY000): Unknown MySQL server host ‘mysql‘ (22)

尝试换成 ip 地址后可以。

参考

相关推荐