使用Maven将springboot工程打包成docker镜像
Maven打包成docker镜像
由于工作原因,需要通过maven将springboot项目打包成docker镜像,先前以为只能在linux上完成,最近调研了一下,也可以在window环境下进行打包。
下面以thinkpad E470,windows10操作系统以及eclipse开发集成工具为例,进行说明。
Springboot项目的创建,本文不进行介绍,请自行百度。
1、增加docker插件依赖
首先Springboot工程需要在pom.xml文件增加对docker插件的支持,最新的插件是dockerfile-maven-plugin,原来的插件是docker-maven-plugin,现在不建议使用。
此处使用最新版本1.4.10。
2、docker插件的配置
3、编写Dockerfile
其中,JAR_FILE 对应的是pom文件buildArgs中的JAR_FILE。
4、Maven命令打包
在springboot项目根目录下,打开命令窗口,执行:mvn clean package dockerfile:build,等待其打包完成:
通过docker命令查看,镜像是否成功:
5、注意事项
1、 Dockerfile文件需要在项目的根目录下,与pom.xml并列。
2、 一个新的springboot工程默认端口是8080。
3、 在Maven的settings.xml文件中添加以下内容:
com.spotify
否则会报以下错误:
4、执行命令:mvn clean package dockerfile:build,而不是mvn clean package docker:build,其是老版本命令,如果执行此命令会报以下错误:
5、执行命令:mvn clean package dockerfile:build 仍然报错
Docker配置中勾选以下选项, Docker的settings:
6、私服
Dokcer安装完成后,镜像默认是从其官网上下载,速度比较慢,可以百度
找些国内的repository,例如阿里的:https://de13k09g.mirror.aliyuncs.com,
然后再DockerEngine中进行配置,如下:
点击,Apply & Restart,如果能重启成功,说明配置成功。
6、Window10 下安装docker
在docker官网(https://www.docker.com/)上注册docker用户,进行下载。安装文件下载完成后,是exe可执行文件,双击执行,等待安装完毕。
安装完毕后,可能docker启动不成功,比如:
那么,就需要开启以下功能。
1、 Hyper-v开启
控制面板—程序—程序和功能,点击启动或关闭Windows功能,将hyper-v勾选上。
2、 bios开启虚拟化
进入BIOS, 找到configuration,选择virtualization 将其设置成Enable
确认机器虚拟化是否启动成功,可以从任务管理器中查看:性能–CPU
2、 bios开启虚拟化
进入BIOS, 找到configuration,选择virtualization 将其设置成Enable
确认机器虚拟化是否启动成功,可以从任务管理器中查看:性能–CPU
以上为个人经验,希望能给大家一个参考,也希望大家多多支持猪先飞。
原文出处:https://blog.csdn.net/sanshizhang/article/details/104511353
相关文章
解决执行maven命令时提示Process terminated的问题
这篇文章主要介绍了解决执行maven命令时提示Process terminated的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-25解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题
这篇文章主要介绍了解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-04-28- 这篇文章主要介绍了解决idea2020 maven无法自动导包的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-13
- 这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
解决IDEA maven 项目修改代码不生效,mvn clean、install后才生效
这篇文章主要介绍了解决IDEA maven 项目修改代码不生效,mvn clean、install后才生效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-25- 这篇文章主要介绍了idea 打包maven项目忽略test文件的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-05
详解Maven profile配置管理及激活profile的几种方式
这篇文章主要介绍了详解Maven profile配置管理及激活profile的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-26- 这篇文章主要介绍了详解springBoot启动时找不到或无法加载主类解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-16
- 这篇文章主要介绍了SpringBoot集成Redis实现消息队列的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-10
- 这篇文章主要介绍了解决Springboot get请求是参数过长的情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-17
Spring Boot项目@RestController使用重定向redirect方式
这篇文章主要介绍了Spring Boot项目@RestController使用重定向redirect方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-02- 这篇文章主要介绍了Springboot+TCP监听服务器搭建过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-28
- 这篇文章主要介绍了springBoot 项目排除数据库启动方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-10
springboot中使用@Transactional注解事物不生效的坑
这篇文章主要介绍了springboot中使用@Transactional注解事物不生效的原因,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-26详解SpringBoot之访问静态资源(webapp...)
这篇文章主要介绍了详解SpringBoot之访问静态资源(webapp...),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-14- 这篇文章主要介绍了SpringBoot接口接收json参数解析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-10-19
- 这篇文章主要介绍了详解idea从git上拉取maven项目详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-08-12
- 这篇文章主要介绍了springboot多模块包扫描问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-16
Springboot mybatis plus druid多数据源解决方案 dynamic-datasource的使用详解
这篇文章主要介绍了Springboot mybatis plus druid多数据源解决方案 dynamic-datasource的使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-11-18- 这篇文章主要介绍了Springboot实现多线程注入bean的工具类操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-27