docker部署MySQL

docker部署MySQL

1、搜索MySQL镜像

# docker search mysql

2、拉取指定版本的MySQL镜像

docker pull mysql:5.6

3、创建MySQL数据卷

[root@szx ~]# mkdir mysql
[root@szx ~]# cd mysql/

4、创建容器

docker run -id -p 3307:3306 \
--name=c_mysql \
-v $PWD/conf/myconf.d:/etc/mysql/conf.d \ -v $PWD/logs:/logs \ -v $PWD/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=root \ mysql:5.6

参数说明

  • -p 3307:3306:                              将容器的3306端口,映射到宿主机的3307端口
  • --name=c_mysql:                        容器名称
  • -v $PWD/conf:/etc/mysql/conf.d    将主机当前目录下的/conf/myconf.d挂载到容器的/etc/mysql/conf.d    【mysql配置目录】
  • -v $PWD/logs:/logs                        将主机当前目录下的logs目录 挂载到容器的logs目录                             【日志目录】
  • -v $PWD/data:/var/lib/mysql         将主机当前目录下的data目录挂载到容器的 /var/lib/mysql                       【数据目录】
  • $PWD: 就是Linux系统当前目录字符串,好像这里必须大写,单独命令行可以小写
  • -e MYSQL_ROOT_PASSWORD=root: 初始化root用户的密码
  • mysql:5.6 指定镜像版本

查看容器

5、进入容器内进行MySQL相关操作

[root@szx mysql]# docker exec -it c_mysql /bin/bash
root@b8194fd0718c:/# 

由于我们是在服务器上启动的mysql容器 如果外网想要访问 我们需要配置安全组 将3307端口开放

开放端口后我们就可以用Navicat连接服务器中的MySQL容器了,连接成功后可以通过Navicat管理docker内的MySQL数据库

通过Navicat创建数据库 创建表 并添加数据后进入容器内查看

进入容器内并登录数据库

[root@szx mysql]# docker exec -it c_mysql /bin/bash
root@b8194fd0718c:/# mysql -uroot -proot

查看库名/表名/数据 是否存在

外网成功和服务器上的MySQL容器进行通信!!!

posted @ 2020-03-18 00:39  叫我大表哥  阅读(219)  评论(0编辑  收藏  举报