您的位置:首页 > 运维架构 > Docker

springboot采用Docker容器化,实现可执行jar文件编译成镜像以及镜像的发布

2018-01-18 15:57 676 查看
作者:ydw_武汉
联系方式:hyl19900208@163.com

前言:

Docker是一个linux的容器管理工具,在现在的架构中,使用非常普遍,它允许用户把容器镜像推送到一个公共的库或者是私有的镜像库中,使用也方便,对于之前项目的部署为了部署环境的统一也很麻烦,现在有了镜像这个概念之后,就很容易实现环境的统一,而且在国内有很多的云容器,也非常的方便用于部署和开发。
springboot是一个基于spring的敏捷开发架构,由于他自带Tomcat他可以编译成一个可执行的jar文件,当然也可以和传统项目一样编译成war包部署到Tomcat中。
今天主要讲解如何把我们的一个Springboot的应用程序部署为一个镜像,并且运行这个镜像。

在正式开始之前需要做好以下准备工作:

1.安装Docker,mac用户使用brew很好装,也可以到Docker的官网上下载对应的安装包安装。Docker对Windows的支持现在已经很好了,可以不需要在安装虚拟机。
官网下载地址如下:https://www.docker.com/community-edition#/download 点击打开下载链接



选择对应的版本下载好直接安装即可。
注意事项:



验证是否安装成功:



2.使用Idea创建一个最简单的Hello word的项目。
第一步:在maven中添加Docker的插件,并且做好相关的属性配置
<properties>
//定义镜像名字的前缀(随便定义,开心就好)
<docker.image.prefix>ydw</docker.image.prefix>
</properties>
<build>
<plugins>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>1.3.6</version>
<configuration>
//定义镜像的名字(随便定义,开心就好也可以是:ydw/test)
<repository>${docker.image.prefix}/${project.artifactId}</repository>
<buildArgs>
//配置需要编译的jar文件的地址(这个不能填错,否则不能构建)
<JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
</buildArgs>
</configuration>
</plugin>
</plugins>
</build>
第二步:



命令如下:

install dockerfile:build

成功编译的日志:

[INFO] Successfully built ydw/test:latest
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 19.733 s
[INFO] Finished at: 2018-01-18T15:50:38+08:00
[INFO] Final Memory: 38M/522M
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0
最后打开cmd或者是powshell查看镜像文件:
命令:docker images
D:\workspace_new\docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ydw/test latest 43ab54dcecca 3 minutes ago 116MB
<none> <none> 049a87970ebf 4 hours ago 116MB
openjdk 8-jdk-alpine 224765a6bdbe 8 days ago 102MB
java 8 d23bdf5b1b1b 12 months ago 643MB上面红色标注的就是我们刚生产的镜像。
运行测试:docker run -d -p 8080:8080 --name ydwAppTest ydw/test
打开浏览器:httl://localhost:8080

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐