Docker 安装 Mysql

Docker 安装 Mysql

1、从镜像源中pull Mysql的镜像,我拉的版本是5.6,大家可不带版本拉最新的。

[root@izwz90lvzs7171wgdhul8az ~]# docker pull mysql:5.6
5.6: Pulling from library/mysql
8f91359f1fff: Pull complete 
6bbb1c853362: Pull complete 
e6e554c0af6f: Pull complete 
f391c1a77330: Pull complete 
414a8a88eabc: Pull complete 
ced966b42b0e: Pull complete 
509b7d623b06: Pull complete 
94a03dec9143: Pull complete 
d40a4af51b78: Pull complete 
e01756c8536e: Pull complete 
327b60c1a0e5: Pull complete 
Digest: sha256:07ebe49dc810444e172c2b5a72ae1a23ad9f4942bfe70a7f0a578590da610579
Status: Downloaded newer image for mysql:5.6
docker.io/library/mysql:5.6

等待下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为mysql,标签为5.6的镜像。

[root@izwz90lvzs7171wgdhul8az ~]# docker images | grep mysql
mysql               5.6                 95e0fc47b096        3 weeks ago         257MB

2、使用Mysql镜像运行容器。

[root@izwz90lvzs7171wgdhul8az ~]# docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
64bc48daaa60a66262a3356d7027e5dad12b903ad7433b79138dae4b5b1eb98e

命令说明:

  • -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。

  • -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。

  • -v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。

  • -v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。

  • -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

3、查看容器启动情况。

[root@izwz90lvzs7171wgdhul8az ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
64bc48daaa60        mysql:5.6           "docker-entrypoint.s??   3 seconds ago       Up 1 second         0.0.0.0:3306->3306/tcp   mymysql

4、使用Navicat链接Mysql。

注意:如果我们使用的是阿里云等云服务器的,要注意是否需要添加安全组规则。

最后,可以看到,连接是没问题的

原文地址:https://www.cnblogs.com/Howinfun/p/11641379.html