Tag: docker fabric8

maven-docker-plugin:如何获取容器的IP地址

我是Docker和fabric8的maven-docker-plugin docker maven-docker-plugin新手。 我想用两个容器做一些集成testing,一个用我的webapp部署,另一个用数据库。 更新:我可以运行这两个容器使用这些命令: docker run –name db -p 27017:27017 mongo docker run –name as -p 8080:8080 –link db mycustom/wildfly /opt/jboss/wildfly/standalone/bin/standalone.sh -b 0.0.0.0 -Ddbhost=172.17.0.2 -Ddbport=27017 这是我使用的dockerfile: FROM fpezzati/wildflyogm ARG webapp COPY $webapp /opt/jboss/wildfly/standalone/deployments/ EXPOSE 8080 CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0"] 现在我想使用fabric8 maven-docker-plugin docker maven-docker-plugin运行这两个容器。 在这一点上,我必须弄清楚如何使用maven-docker-plugin -Ddbhost=${dbhost} -Ddbport=${dbport} maven-docker-plugin来表示一个能够使用两个参数-Ddbhost=${dbhost} -Ddbport=${dbport}的run命令,其中${dbhost}和${dbport}应该是具有数据库容器IP地址和暴露端口的两个maven属性。 我怎么能像在手边的例子中那样expression一个运行命令,并使用fabric8 maven-docker-plugin docker maven-docker-plugin让我的webapp知道数据库的IP地址? 更新:我清理了我在我的pom.xml和dockerfile中做了一些混乱。 现在我可以通过使用环境variables传递参数。 […]

用maven fabric8插件保存docker映像

我想在我的pom.xml中包含一些位来保存一个build好的docker镜像,这就是我在fabric8 docker mvn插件中的部分。 <execution> <id>save</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> 而且我还将这个属性包含在了fabric8文档中 <properties> <docker.save.alias>image</docker.save.alias> </properties> 但是,当我做mvn包我没有看到任何image.tar。 还有可能打包一些其他文件的图像焦油在另一个档案?

运行docker-containers作为使用fabric8的模块

我有一个涉及kafka,zookeeper和elasticsearch等的小项目。 我有一个工作的解决scheme,我想实现,我可以启动和停止使用docker构成我的设置。 但是,我想使用maven-fabric8-plugin和modules来重构我的maven-project。 这个想法是有一个主项目包含每个子系统的模块。 – 主要项目 -containers(模块)的 -kafka(模块)的 -zookeeper(模块)的 我可以使用mvn docker:build构build图像mvn docker:build可以轻松mvn docker:build ,但是可以将其设置为可以使用mvn docker:start运行mvn docker:start im面临的问题是,我生成的图像是以错误的顺序启动的,而且kafka需要zookeeper才能运行。 迫使Maven执行顺序的路要走吗? 这甚至可能吗? 有没有人有一个例子,向我展示如何做到这一点? 问候

fabric8 docker-maven-plugin capAdd失败,出现“未知能力添加”

上下文 :尝试设置一个自动化集成testing套件,maven可以在CI服务器上运行testing之前和之后启动和停止docker映像。 由于广泛的文件,决定与fabric8结盟。 fabric8io.github.io/docker-maven-plugin/docker-start.html说 cap添加一个添加元素列表来指定要添加到容器的内核参数。 我假设语法与ADD local-artifact-version.jar app.jar类似,但是这不起作用。 问题 :当我运行mvn clean package docker时:build docker:start -Ddocker.follow = true我得到一个错误io.fabric8.maven.docker.access.hc.http.HttpRequestException: Cannot start container [sha1]: Unknown capability to add "target/artifact-1.0.0-SNAPSHOT-exec.jar app.jar" 当使用fabric8 docker maven插件时Dockerfile的“ADD”语义的正确用法是什么? pom : <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <configuration> <image> <name>postgres:9.4</name> <alias>dbstore</alias> <run> <namingStrategy>alias</namingStrategy> <volumes> <bind>/var/lib/postgresql/data</bind> </volumes> </run> </image> <image> <name>private-dockerhub.company.com/dbpath/postgres:latest</name> <alias>data_dump_loader</alias> <run> […]

Docker maven fabric8插件(在Windows上):构build映像给出不兼容问题?

通过Maven我想从Springboot项目build立一个Docker镜像。 我运行:mvn clean package docker:build问题: ERROR] Failed to execute goal io.fabric8:docker-maven-plugin:0.21.0:build (default-cli) on project spring-boot-docker: Execution default-cli of goal io.fabric8:docker-maven-plugin:0.21.0:build failed: An API incompatibility was encountered while executing io. fabric8:docker-maven-plugin:0.21.0:build: java.lang.UnsatisfiedLinkError: unknown [ERROR] —————————————————– [ERROR] realm = plugin>io.fabric8:docker-maven-plugin:0.21.0 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy [ERROR] urls[0] = file:/C:/Users/Johan/.m2/repository/io/fabric8/docker-maven-plugin/0.21.0/docker-maven-plugin-0.21.0.jar Etc maven pom.xml文件包含: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> <docker.image.prefix>springframeworkguru</docker.image.prefix> <docker.image.name>springbootdocker</docker.image.name> <docker.host.url>unix:///var/run/docker.sock</docker.host.url> […]

通过fabric8io docker-maven-plugin将一个.war部署到一个Docker镜像中

我对Docker和fabric8io docker docker-maven-plugin很新。 我有一些困难的时候将一个.war插入到我的jboss/wildfly派生的图像中。 我可以通过命令行成功构build与.war一起提供的映像,但是我不能通过已经提到的插件来完成。 据我所知,一旦你给正确的上下文和Dockerfile它应该只是一个问题: <build> <finalName>${project.build.finalName}.${project.packaging}</finalName> … <assembly> <descriptorRef>artifact</descriptorRef> </assembly> </build> 但我得到这个错误: [INFO] <<< docker-maven-plugin:0.19.0:build (default-cli) < package @ YoOffer <<< [INFO] [INFO] — docker-maven-plugin:0.19.0:build (default-cli) @ YoOffer — [WARNING] Cannot include project artifact: edu.pezzati.yo:YoOffer:war:0.0.1-SNAPSHOT; it doesn't have an associated file or directory. [WARNING] The following patterns were never triggered in this artifact […]