文章目录
- docker部署mysql的数据持久化
- 需要的知识
- 需要的工具
- 服务器配置
- MySQL配置
- Springboot项目打jar包
- 编写Dockerfile文件
- 访问
docker部署mysql的数据持久化
首先,我起初想着将 mysql 容器中的数据持久化 commit 成为一个新的镜像,但是保存后的新镜像与原镜像大小一样—— 数据没有保存,官方说 commit 操作并不会包含容器内挂载数据卷中的数据变化,所以还是老老实实卷挂载吧
使用 docker inspect 查看 mysql 容器,发现默认匿名挂载 /var/lib/mysql ,而此目录确实是数据 mysql 数据目录
基于 docker 部署 mysql 的数据持久化问题 https://www.jianshu.com/p/530d00f97cbf
需要的知识
- Linux知识
- Docker
需要的工具
- FinalShell(或者其他同类工具)连接远程 Linux 服务器
- Navicat(或者其他同类工具)解析.sql脚本
服务器配置
注:如果是阿里云的服务器,需要修改相应的安全组规则(就是阿里云又给我们加了一道墙)
MySQL配置
从 Docker Hub 上拉取 MySQL镜像,我用的是8版本,根据自己的需求选择镜像
启动 MySQL 镜像
本地启动 Navicat 连接服务器的 MySQL 提供数据
建立你想要的数据并且运行sql脚本
Springboot项目打jar包
注意打包的时候相应的配置都需要修改,端口也需要根据需要修改,我使用的80端口
然后使用 maven 的 package 打包,最好先 clean 清理一下,让它重新编译
编写Dockerfile文件
将你打好的 jar 包与 Dockerfile 文件上传到 Linux 机器的同一目录
jar包在项目生成的target目录下
访问
#运行镜像
[root@dinosaur match]# docker run -d --name match01 -p 80:80 match:1.0
99aef74f119fc61129762f3fde78120137b78c3432d488ccc21f344b78b4c398