decker工具安装

centos7.6:安装docker下mysql并外网远程连接

2021-09-15  本文已影响0人  玩转测试开发

拉取MySQL镜像5.7

docker pull mysql:5.7

查看拉取的镜像

docker images |grep mysql
图片

创建目录mysql用于存放MySQL相关文件

$ mkdir mysqlfiles
$ cd mysqlfiles

创建MySQL容器: !!!请注意这里设置暴露的对外端口是 3360 !!!

$ docker run -p 3360: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.7
#参数说明
-p 3360:3306:将容器的 3306 端口映射到主机的 3360 端口(第一个物理机端口,第二个容器端口)。
-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 用户的密码。
-d: 后台运行容器,并返回容器ID

!!!请注意这里设置暴露的对外端口是 3360  !!!

查看运行的容器

docker ps | grep mysql

开启docker交互模式终端

$ docker exec -i -t mymysql /bin/bash

登录MySQL

$ mysql -u root -p
输入123456

进入MySQL后授权

#--数据库的所有权限授权给 user这个用户,允许user用户在任何一个 IP 进行远程登陆,并设置 root 用户的密码为 123456
> grant all PRIVILEGES on *.* to 'user'@'%'  identified by '123456';
> flush privileges; 
>exit;

退出docker终端

exit

添加安全组

图片

使用navicat连接,并新建数据库 dkdb0916

图片 图片

服务端登录mysql和检查创建情况:

docker exec -i -t mymysql /bin/bash
图片

自从,docker下安装mysql并且外网链接成功,并且操作正常。

微信公众号:玩转测试开发
欢迎关注,共同进步,谢谢!

上一篇下一篇

猜你喜欢

热点阅读