1.项目回顾
上篇文章中我们使用idea创建了springboot项目并且和mongo数据库整合。本篇将使用idea把springboot项目代码打包成jar包,使用容器将jar包构建成基础应用镜像并根据此镜像创建容器。
2.项目打包过程
打开上次的项目,右侧菜单选择maven,选择Execute Maven Goal按钮。
双击mvn clean 清理下代码环境。
然后重复之前操作,这次双击mvn package等待代码打包完成。
打包完成后生成target目录,里面有刚才打包好的jar包。
3.容器镜像构建过程
将“spring-boot2-0.0.1-SNAPSHOT.jar”包上传到容器服务器,服务器上创建目录。
目录结构如下:
|
|
通过Dockerfile生成镜像。
|
|
FROM
:指明我们基于某个镜像来打包,因为需要启动Java
应用,所以我们找了一个带JDK
环境的镜像。这就非常灵活了,有非常多带Java
环境的镜像,即使没有合适的,也可以自己做一个;ARG
:Dockerfile
构建时的参数;ENV
:环境变量;COPY
:把文件复制到新的镜像内;EXPOSE
:暴露端口,这样外部才能访问;ENTRYPOINT
:启动命令。
准备好了Dockerfile
后,就可以开始打包了:
|
|
等待构建完成后查看镜像
|
|
使用该镜像创建一个应用
|
|
根据容器启动日志看容器是否启动成功。
说明Springboot
应用已经正常启动,并成功连接MongoDB
。
用Postman
做一个简单的测试,成功插入一条数据。
这是微软关于Docker
微服务的开发流程图,大体就是应用代码
——Dockerfile
——生成镜像
——容器编排服务
——运行
——测试
——提交
。