使用Maven插件怎么构建一个码头工人镜像

  介绍

使用Maven插件怎么构建一个码头工人镜像?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

<强>使用插件构建码头工人镜像

<强>简单使用

我们以之前的项目:microservice-discovery-eureka为例:

在pom。xml中添加下面这段

, & lt; build>   & lt;才能plugins>   ,,& lt; !——,码头工人的maven插件,官网:https://github.com/spotify/docker-maven-plugin ——比;   ,,& lt; plugin>   ,,,& lt; groupId> com.spotify   ,,,& lt; artifactId> docker-maven-plugin   ,,,& lt; version> 0.4.12   ,,,& lt; configuration>   ,,,,& lt; !——,注意imageName一定要是符合正则[a-z0-9 _)的,否则构建不会成功,——比;   ,,,,& lt; !——,详见:https://github.com/spotify/docker-maven-plugin  Invalid  repository  name ……, only  [a-z0-9 _),断开连接,允许——比;   ,,,,& lt; imageName> microservice-discovery-eureka   ,,,,& lt; baseImage> java   ,,,,& lt; entryPoint> [“java",,“-jar",,“/$ {project.build.finalName} .jar"] & lt;/entryPoint>   ,,,,& lt; resources>   ,,,,,& lt; resource>   ,,,,,,& lt; targetPath>/& lt;/targetPath>   ,,,,,,& lt; directory> $ {project.build.directory} & lt;/directory>   ,,,,,,& lt; include> $ {project.build.finalName} .jar   ,,,,,& lt;/resource>   ,,,,& lt;/resources>   ,,,& lt;/configuration>   ,,& lt;/plugin>   & lt;才能/plugins>   ,& lt;/build>

执行命令:

mvn  clean  package 码头工人:构建

我们会发现控制台有类似如下内容:

[信息],Building  image  microservice-discovery-eureka   Step  1,:得到java   Pulling 得到图书馆/java   文摘:sha256:581a4afcbbedd8fdf194d597cb5106c1f91463024fb3a49a2d9f025165eb675f   状态:,Downloaded  newer  image  for  java:最新   ,——→ea40c858f006   Step  2,: ADD /microservice-discovery-eureka-0.0.1-SNAPSHOT.jar //,——→d1c174083bca   Removing  intermediate  container  91913 d847c20   Step  3,:, ENTRYPOINT  java  -jar /microservice-discovery-eureka-0.0.1-SNAPSHOT.jar   ,——→Running  0 f2aeccdfd46拷贝   ,——→d57b027ca65a   f2aeccdfd46 Removing  intermediate  container  0   Successfully  built  d57b027ca65a   [信息],Built  microservice-discovery-eureka   (信息),- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -   [信息],BUILD 成功   (信息),- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -   [信息],Total 时间:01:38 最小   [信息],Finished 在:,2016 - 09 - 18 - t01:05:05 07:00   [信息],Final 记忆:,40 m/198 m

恭喜,构建成功了。

我们执行码头工人的图片会发现该镜像已经被构建成功:

REPOSITORY ,,,,, TAG ,,,, IMAGE  ID ,, CREATED ,,大小   microservice-discovery-eureka  latest ,,, d57b027ca65a , About  a  minute  ago  681.5, MB

启动镜像

docker  run  -p  8761:8761  microservice-discovery-eureka

我们会发现该码头工人镜像会很快地启动。

访问测试

访问http://Docker宿主机IP: 8761年,能够正常看到尤里卡界面。

<强>使用Dockerfile进行构建

上文讲述的方式是最简单的方式,很多时候,我们还是要借助Dockerfile进行构建的,首先我们在microservice-discovery-eureka/src/main/码头工人目录下,建立文件Dockerfile

得到java: 8   VOLUME /tmp   ADD  microservice-discovery-eureka-0.0.1-SNAPSHOT.jar  app.jar   RUN  bash  -c  & # 39; touch /app.jar& # 39;   EXPOSE  9000   (“java" ENTRYPOINT ,“-Djava.security.egd=文件:/dev/?urandom",“-jar",“/app.jar"]

修改砰的一声。xml

& lt; build>   & lt;才能plugins>   ,,& lt; !——,码头工人的maven插件,官网:https://github.com/spotify/docker-maven-plugin ——比;   ,,& lt; plugin>   ,,,& lt; groupId> com.spotify   ,,,& lt; artifactId> docker-maven-plugin

使用Maven插件怎么构建一个码头工人镜像