技术开发 频道

为Java EE应用提供的9种Docker方法

  第8种Docker方法:从Eclipse部署Java EE应用程序

从Eclipse部署Java EE

  这个压轴方法将教你如何把已有的应用程序部署到一个Docker镜像中。

  假定你将JBoss Tools作为你的开发环境,WildFly用作你的应用服务器。

  这里提供两条途径来部署这些应用程序:

  1) 基于 Docker volumes + 本地 的部署方式:在你本地计算机上有一个目录,正以Docker Volume的形式挂载着。通过将这个目录映射到用于部署的目录,WildFly Docker容器被这样启动起来:

  docker run -it -p 8080:8080 -v /Users/arungupta/tmp/deployments:/opt/jboss/wildfly/standalone/deployments/:rw jboss/wildfly

  通过设置JBoss Tools将WAR文件部署到这个目录中。

  2) 基于 WildFly管理API + 远程 的部署方式:启动WildFly Docker容器,此外还要开放管理端口9990:

  docker run -it -p 8080:8080 -p 9990:9990 arungupta/wildfly-management

  通过设置JBoss Tools来使用远程的WildFly服务器,并利用管理API来进行部署。

  对这个方法的详细讲解在从Eclipse部署到WildFly和Docker上中可以找到。

  第9种Docker方法:使用Arquillian Cube测试Java EE应用程序

  Arquillian Cube允许你以手动或自动的方式,在测试的生命周期中,控制Docker镜像的生命周期。Cube利用Docker REST API与容器通信。它使用远程适配器API同应用服务器通信,比如这里用到的WildFly。Docker参数是作为maven-surefire- plugin的一部分来配置的:

   wildfly-docker 

   admin

   Admin#70365

   1.15

   http://127.0.0.1:2375

   wildfly-docker: 

   image: arungupta/javaee7-samples-wildfly

   exposedPorts: [8080/tcp, 9990/tcp]

   await:

   strategy: polling

   sleepPollingTime: 50000

   iterations: 5

   portBindings: [8080/tcp, 9990/tcp]

  关于这个方法的完整详情可以在使用Arquillian Cube在Docker上运行Java EE测试中找到。

  在Docker上部署你的Java EE应用程序时,你还用了什么其他方法吗?

  欢迎尝试这些方法!

1
相关文章