菜鸟的Docker部署SpringBoot项目

菜鸟的Docker部署SpringBoot项目

说明

更新时间:2020/6/4 15:504,更新了部分详细命令

本文记录docker部署springboot项目的相关知识,本文会持续更新,不断地扩充

本文仅为记录学习轨迹,如有侵权,联系删除

除了本文记录的传统的docker部署springboot项目之外,还有一种通过idea的docker插件的一键部署springboot项目,具体可以看本人的另一篇博客菜鸟的IDEA使用Docker插件

一、环境

(1)首先需要安装VMware虚拟机,本人采用VMware虚拟机的方式来进行docker的相关知识的学习
(2)在虚拟机里面安装Ubuntu系统
(3)docker的安装,这个可以参考本人之前docker系列的博文,有菜鸟入门Docker菜鸟学习docker实例

二、部署

部署方式,个人知道的有两种,一种是自己手动将springboot项目通过maven打包成jar包后,自己手动的将jar上传到服务器,通过手动Dockerfile文件的方式的方式部署;还有一种是用idea的dokcer插件,直接通过idea上传到服务器进行部署。

这里先用第一种方式进行部署,后面会出一期idae插件一键部署的博文,首先确定自己的虚拟机里面已经安装了docker,并且保证已经从镜像仓库里面拉取了java镜像和mysql镜像,在已经安装了Ubuntu系统和dokcer的虚拟机里面输入docker image ls
在这里插入图片描述
如果没有安装的话需要先安装一下这两个镜像,docker拉取镜像也挺简单的,一行命令搞定docker pull 要拉取的镜像,下面以拉取java镜像为例
在这里插入图片描述
mysql镜像的拉取也是如此,这里就不再重复,实在不知道怎么拉取的可以查看本人的这篇博文菜鸟学习docker实例

拉取好上面两个镜像后,需要先创建一个mysql容器,mysql容器的创建个人觉得如果加上做数据的挂载的话还是有点小复杂的,不过这些本人之前已经做过了,具体可以查看本人的这篇博文菜鸟学习docker实例,里面有详细的记录如何创建mysql容器和mysql做数据挂载等。

输入命令docker ps -a,查看目前虚拟机里面正在运行的容器
在这里插入图片描述
在虚拟机外面通过navicat连接虚拟机里面的mysql容器,并且将要部署的springboot项目的数据导进去
在这里插入图片描述
在这里插入图片描述
然后将springboot项目配置文件的数据库连接信息修改一下,让其连接到虚拟机里面的mysql容器
在这里插入图片描述
试着启动springboot项目,输入账号密码,可以登录,说明数据库连接成功
在这里插入图片描述
将项目用maven打包成一个jar包
在这里插入图片描述
创建Dockerfile文件

FROM  java
VOLUME  /tmp
ADD museum-0.0.1-SNAPSHOT.jar museum.jar
EXPOSE 8088
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/museum.jar"]

FROM java:表示安装的java镜像
VOLUME /tmp:创建/tmp目录并持久化到Docker数据文件夹
ADD museum-0.0.1-SNAPSHOT.jar museum.jar:将生成的jar包复制并重命名到museum.jar
EXPOSE 8088:对外暴露的接口,也是访问的接口,接口的端口号需要根据springboot项目配置的端口号来设置
ENTRYPOINT:固定写法,用来运行jar包,相当于java -jar xxx.jar一样

最后将Dockerfile文件和打包生成的jar包(museum-0.0.1-SNAPSHOT.jar)一起上传到虚拟机里面的Ubuntu系列里面,并且处于同一目录下
在这里插入图片描述
进入Dockerfile文件和打包生成的jar包所在的文件夹,并且输入构建镜像的命令docker build -t museum .注意命令后面还有一个小数点,museum是Dockerfile文件里面ADD museum-0.0.1-SNAPSHOT.jar museum.jar的museum,镜像即可构建成功,由于当时构建成功后没有截图,这里采用别人的图(图里的exam.jar对应museum.jar)
在这里插入图片描述
查看构建好的镜像
在这里插入图片描述
运行镜像,输入命令docker run -d --name museum01 -p 8088:8088 museum关于运行镜像命令在本人的docker系列博文里面有解释,这里就不解释了。跑起来之后就可以在虚拟机外面通过虚拟机里Ubuntu系统的ip来访问了
在这里插入图片描述
查看容器有没有跑起来,没有的话需要用docker start 容器id命令跑起来
在这里插入图片描述
确定了容器跑起来之后可以在虚拟机外面通过ip访问
在这里插入图片描述
输入docker ps -a查看生成的镜像有没有在运行
在这里插入图片描述
这就是第一种方式docker部署springboot项目

除了本文记录的传统的docker部署springboot项目之外,还有一种通过idea的docker插件的一键部署springboot项目,具体可以看本人的另一篇博客菜鸟的IDEA使用Docker插件

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值