使用Maven将springboot工程打包成docker镜像 目录 Maven打包成docker镜像 1.增加docker插件依赖 2.docker插件的配置 3.编写Dockerfile 4.Maven命令打包 5.注意事项 6.Window10 下安装docker Maven打包成docker镜像 由于工作原因,需要通过maven将springboot项目打包成docker镜像
目录
- Maven打包成docker镜像
- 1、增加docker插件依赖
- 2、docker插件的配置
- 3、编写Dockerfile
- 4、Maven命令打包
- 5、注意事项
- 6、Window10 下安装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
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
本文标题为:使用Maven将springboot工程打包成docker镜像
基础教程推荐
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- Java数据结构之对象比较详解 2023-03-07
- java基础知识之FileInputStream流的使用 2023-08-11
- springboot自定义starter方法及注解实例 2023-03-31
- Java实现查找文件和替换文件内容 2023-04-06
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02
- java实现多人聊天系统 2023-05-19
- Java并发编程进阶之线程控制篇 2023-03-07
- Java实现线程插队的示例代码 2022-09-03
- Java文件管理操作的知识点整理 2023-05-19