使用docker创建MySQL容器,并在springboot中使用

最近在看网上找了个springboot的项目试试,在项目中需要的MySQL版本是5.7,但是本机的MySQL只有5.5。因此想着在我的服务器上跑一个MySQL:5.7的容器解决这一问题,但是在实际操作过程中出现了一些问题,在这做下记录。

一、MySQL:5.7容器的创建

1.拉取镜像

 docker pull mysql:5.7

2.查看镜像

 docker images

3.创建与启动容器

 docker run -di --name=mysql5. -p : -e MYSQL_ROOT_PASSWORD= mysql:5.7

4.查看启动的容器

 docker ps

5.查看容器(包括关闭的容器)

 docker ps -a

二、出现的问题

1.创建完容器后,以守护式方式创建完容器后发现MySQL容器几秒钟后自己关闭了。

在网上查后发现可能是虚拟内存不够。使用free后发现swap虚拟内存为0,应该是虚拟内存未启用。

启用swap:

 dd if=/dev/zero of=/swapfile bs=1M count=

 mkswap /swapfile

 swapon /swapfile

再次free发现swap有数值了

使用docker创建MySQL容器,并在springboot中使用

再次启动容器后发现容器不会自己关闭了,那么问题解决了。

2.在springboot中连接MySQL容器报错

使用docker创建MySQL容器,并在springboot中使用

在网上搜索解决办法大部分都说是权限的问题,但是添加权限后还是没用。

后来想到可能是配置文件的问题,因为我将服务器的33306端口映射到了MySQL的3306端口,而在配置文件中没有填写MySQL端口的信息,那么用的应该是MySQL默认的3306端口。

在配置文件中加入33306端口配置信息,springboot可以正常使用了。

使用docker创建MySQL容器,并在springboot中使用

上一篇:transform旋转,平移,缩放,扭曲 斜切


下一篇:Docker创建Mysql容器并通过命令行连接到容器