Docker是一个开源的应用容器引擎,将应用以及依赖打包到一个可移植的镜像中,部署到服务器并运行在Container容器实例中。
在构建Docker镜像时,需要运行mvn package打包Spring Boot项目,是不是下载依赖库很慢导致整个构建过程很长?分享一个巧妙的解决方法。
1,Dockerfile配置是核心
Dockerfile是镜像描述文件,包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。Dockerfile基本结构:
- 基础镜像
- 维护者信息
- 镜像构建指令
- 容器启动时执行指令
构建Docker镜像时,为了解决mvn下载依赖库速度慢、用时长的问题,将构建过程拆分为两步:
1) Dockerfile_base为了触发mvn下载依赖库,构建一个空的Spring Boot项目,用时约10分钟,在项目周期中很少改动,只需维护pom.xml
2) Dockerfile依赖Dockerfile_base,拉取源代码和编译打包jar文件,用时约3分钟,每次代码更新时构建Docker镜像,速度非常快了。
2,增加Dockerfile_ce社区版
依赖本地开发环境,将编译好的项目运行文件打包进Docker镜像,多用于本地开发测试,快速构建。
实例Dockerfile下载:https://github.com/jextop/StarterDeploy
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。