史上最详细Docker安装Mysql 带每一步详图及解释 并教你Docker 打印容器日志!!!相信值得你的阅读!!!

众所周知,如果我们要把项目放在服务器上运行,那么数据存储就是必需的,就用这篇小小文章记录一下我的经历吧。

MySQL是一个关系型数据库管理系统,也是是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

在这里插入图片描述
图片来源:一个小城市夜晚
作者: 博主

一、Docker 搜索Mysql 镜像

docker 搜索镜像命令 docker search <镜像名字>:<版本号>

docker search mysql

在这里插入图片描述

👴🧓

二、Docker 拉取Mysql 镜像

docker 拉取镜像命令 docker pull <镜像名字>:<版本号>

docker pull mysql:5.7

在这里插入图片描述

三、Docker 查看全部镜像

docker images

在这里插入图片描述

四、Docker 启动Mysql镜像

docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d     -v/home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7

docker 中启动时可带参数很多,这里只讲这次mysql 启动所用到的参数。

解释:👨‍🏭

  1. docker run :启动镜像命令

  2. -d:在后台运行容器,并打印容器id。

  3. -p:发布列表将容器的端口发布到主机 (即端口映射)

    • 注意: 要打开服务器安全组哈。不然访问不了。

    • 此处所写的 3310:3306 的意思是:

      🦸‍♀️在这里插入图片描述

  4. -v:文件挂载。

    • 此处 -v /home/mysql/data:/var/lib/mysql 的意思是 将 宿主机中的目录 “/home/mysql/data”mysql容器中的文件目录 “/var/lib/mysql” 进行 挂载形象理解:即双向绑定,修改宿主机的文件,容器内的文件也随之更改)。
    • 注意: 宿主机我们要绑定的文件目录,只用写明,不用主动创建,在启动过程中,会自动创建。
  5. -e: 设置环境变量。

    • 此处:MYSQL_ROOT_PASSWORD=123456 设置Mysql 管理员密码。
  6. –name:为启动的容器取一个名字,此处即为 启动的mysql 容器取名为:mysql01

  7. mysql:5.7: 为镜像名称 mysql 为镜像名称,: 后的 5.7 为指定版本 。 不指定 Docker 会自动去中央仓库拉取最新版。

在这里插入图片描述

注意:有时候我们启动完成了,打印出容器id,但是并不代表,我们一定是启动成功了的。

可以通过以下几个方式来判断:1、查看容器运行日志,2、通过外部访问 (后文有)

五、Docker 查看全部容器

docker ps -a

: -a 就是查询全部的容器 ,不带 -a 参数就是查询运行中的容器

不带 -a参数:

在这里插入图片描述

带 -a参数:

在这里插入图片描述

六、Docker 查看运行日志

基本格式:docker logs [OPTIONS] CONTAINER 👨‍💻

OPTIONS:可带参数 见下图。

在这里插入图片描述

  • –details 显示更多的信息
  • -f, --follow 跟踪实时日志
  • –since string 显示自某个timestamp之后的日志,或相对时间,如30m(即30分钟)
  • –tail string 从日志末尾显示多少行日志, 默认是all
  • -t, --timestamps 显示时间戳
  • –until string 显示自某个timestamp之前的日志,或相对时间,如30m(即30分钟)

举例:

1、查看此容器全部运行日志:

docker logs  <容器id>

2、查看日志,只显示最后200行

docker logs --tail 200 CONTAINER_ID

3、查看最近30分钟的日志

docker logs --since 30m CONTAINER_ID

4、查看某时间之后的日志

dockere logs -t --since "2020-10-25T14:06:30" CONTAINER_ID

5、查看某时间段之间的日志

docker logs -t --since "2020-10-25T14:06:30" --until "2020-10-26T14:06:30" CONTAINER_ID

七、外部测试

在这里插入图片描述
我们连接完成后,在这里操作,然后去 服务器上查看,看是否成功。
在这里插入图片描述
创建完成后,我们去服务器上查看。

进入容器命令

docker exec -it <容器名>  /bin/bash

在这里插入图片描述
通过 show databases;查看此时有多少数据库。证明我们操作成功拉。
在这里插入图片描述

web 配置文件书写:

url: jdbc:mysql://ip地址:3310/test?useSSL=false&characterEncoding=utf8&serverTimezone=GMT

注:端口设置成什么即填写什么。

八、自言自语

注意: 这么使用mysql 存在一定安全问题,因为我的没有什么重要文件,才如此做的,对外开放端口,存在一定的危险性。 自己写着玩的,肯定不影响的,没有问题的,如果是需要考虑这方面问题的,可以去查看 docker 容器连接 相关的文章,即可解决。
最近在整理文章的时候,发现写了不少Docker方面的文章,这次就打算把初阶阶段方面的知识点都补一补。👩‍💻👩‍💻

希望大家能私信给点照片救济,库存没有啦🛌

对于Docker 安装其他东西感兴趣的,redis、vue、SpringBoot等等可以看这看这👇

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值