一步步教你把SpringBoot项目打包成Docker镜像
把SpringBoot项目打包成Docker镜像有两种方案:
全自动化:先打好docker镜像仓库,然后在项目的maven配置中配置好仓库的地址,在项目里配置好Dockerfile文件,这样可以直接在idea中打包好后自动上传到镜像仓库,然后去服务器上启动这个镜像就行了。
半自动化:半自动化又有两种方案,一种是Dockerfile文件放在项目里面,一种是放在项目外面。
- 放在项目里面:springboot pom.xml中配置maven插件支持,打包时会使用项目里面的dockerfile,如果没配置插件支持会报错找不到dockerfile文件
- 放在项目外面:springboot还是打包成普通的jar,然后把这个jar上传到服务器,同时在服务器创建一个Dockerfile文件,执行docker build命令,把这个jar构建成一个docker镜像,然后通过镜像执行。
一般来说用半自动化比全自动化用的多,本文用的算是半自动化方式的第二种,总体来说有一下几个步骤:
1. 构建SpringBoot项目


编写一个controller

进行本地测试

2. 打包应用
点击package将项目进行打包

打包成功

cmd运行java -jar能够运行成功

可以下载个Docker插件

3. 编写dockerfile
在target里面创建Dockerfile文件,此时Dockerfile文件是高亮的

Dockerfile配置内容(在Idea里面写Dockerfile会有提示)
#发布到网上时只会把jar包和Dockerfile发布上去 COPY *.jar /app.jar #地址映射 CMD ["--server.port=8080"] #对外暴露端口 EXPOSE 8080 #执行命令 ENTRYPOINT ["java","-jar","/app.jar"]
4. 构建镜像
将jar包和Dockerfile文件拿出来新建个文件夹放里面,按住shift键打开PowerShell
(注意:本人电脑上安装的是Docker Desktop)

输入命令构建镜像,firstdocker是镜像名(最后的 . 表示 Dockerfile 文件在当前目录下)

查看构建好的镜像(不清楚命令的可以先学一下基础命令)

镜像构建成功后运行容器(第一个为服务器8080端口,第二个8080为docker容器端口)

可以看容器是否在运行和日志信息

访问成功

5. 发布运行
可以将镜像上传到dockerhub,以后使用Docker之后,给别人交付的就是一个镜像即可!
总结
到此这篇关于把SpringBoot项目打包成Docker镜像的文章就介绍到这了,更多相关SpringBoot项目打包Docker镜像内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- springboot服务docker打包分层的实现
- 将Java(SpringBoot)项目打包为Docker镜像的三种方法
- 浅析如何将多个SpringBoot项目打包到一个Docker容器中
- Docker打包SpringBoot镜像的实现方式
- SpringBoot打包成Docker镜像的项目实践
- SpringBoot打包成Docker镜像的几种实现方式
- SpringBoot多模块打包部署Docker的项目实战
- SpringBoot打包docker镜像发布的详细步骤
- Springboot打包为Docker镜像并部署的实现
- SpringBoot3.x打包Docker容器的实现
- Springboot微服务打包Docker镜像流程解析
- Springboot打包docker的多种方法实现
相关文章
springboot集成mybaits-generator自动生成代码的流程分析
这篇文章主要介绍了springboot集成mybaits-generator自动生成代码的流程分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,感兴趣的朋友一起看看吧2025-04-04
Springboot中@Value注解的场景用法及可能遇到的问题详解
这篇文章主要给大家介绍了关于Springboot中@Value注解的场景用法及可能遇到问题的相关资料, @Value通常用于注入外部化属性,即外部配置属性的注入,文中通过图文介绍的非常详细,需要的朋友可以参考下2023-11-11
Springboot使用@Valid 和AOP做参数校验及日志输出问题
这篇文章主要介绍的Springboot使用@Valid 和AOP做参数校验及日志输出问题,本文通过代码讲解的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-11-11


最新评论