Tag: maven

将Maven仓库挂载到Docker

我正在尝试构build一个Java应用程序,并使用docker制作一个包。 这个构build需要一个Maven仓库,我不想在图像中包含它,因为它非常大。 我想尝试使用卷,并将我的本地Maven存储库挂载到图像中的Maven存储库。 我使用apt-get install -y maven为了使maven可用,但是我在$HOME映像中找不到目录.m2 。 我用ls -la $HOME , ls -la和ls -la /rootfindmaven home,但是没有.m2目录。 编辑1: 我有Dockerfile这些行: FROM ubuntu MAINTAINER Zeinab Abbasimazar # Install and configure required packages RUN apt-get update; \ apt-get install -y –no-install-recommends apt-utils; \ apt-get install -y dialog; \ apt-get install -y wget unzip curl maven; \ mkdir $HOME/.m2/; […]

使用Maven下载所有依赖项,插件依赖项,编译器等?

我正在烘焙一个在运行时运行Maven任务的Docker镜像。 它看起来像这样: ADD pom.xml /srv ADD src /srv/src WORKDIR /srv RUN mvn dependencies:go-offline scala:testCompile 在运行时,我正在运行mvn gatling:execute以运行负载testing实用程序。 我的POM看起来像这样: <project> <dependencies> <dependency> <groupId>io.gatling</groupId> <artifactId>gatling-core</artifactId> <version>${gatling.version}</version> </dependency> <dependency> <groupId>io.gatling</groupId> <artifactId>gatling-http</artifactId> <version>${gatling.version}</version> </dependency> <dependency> <groupId>io.gatling</groupId> <artifactId>gatling-app</artifactId> <version>${gatling.version}</version> </dependency> <dependency> <groupId>io.gatling.highcharts</groupId> <artifactId>gatling-charts-highcharts</artifactId> <version>${gatling.version}</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <version>${scala-maven-plugin.version}</version> </plugin> <plugin> <groupId>io.gatling</groupId> <artifactId>gatling-maven-plugin</artifactId> <version>${gatling-plugin.version}</version> <executions> <execution> <goals> […]

不要下载Docker版本上的所有Maven依赖关系

我试图创build一个Dockerfile然后build立一个Maven项目。 我不知道如何解决Dockerfile和什么命令然后执行。 我想知道如何运行构build,以便它不会在每次构build时都下载所有的Maven依赖关系,而源代码位于src /目录中却没有更改。 这是我的Dockerfile文件: FROM maven:3.3.9-jdk-8 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app RUN cd /usr/src/app ADD pom.xml /usr/src/app RUN mvn dependency:resolve ADD src /usr/src/app RUN mvn package ENTRYPOINT ["mvn"] CMD ["package"] 我应该docker run –rm -it toolbox命令还是docker run –rm -it toolbox docker build -t toolbox . 命令? 上述两个命令都运行良好,除非它们都下载了所有的Maven依赖关系,即使源代码没有被触及。

如何使用compose将docker卷安装到我的docker项目中?

我有一个Maven项目。 我在Docker中运行我的Maven构build。 但问题是每次运行Maven时都下载所有的Maven依赖项,并且不会caching任何Maven下载。 我find了一些解决办法,将您的本地.m2文件夹安装到Docker容器中。 但是这会使得构build依赖于本地设置。 我想要做的是创build一个卷(长期居住)和链接/挂载该卷到Docker中的.m2文件夹。 这样,当我第二次运行Docker构build时,它不会下载所有的东西。 它不会依赖于环境。 如何用docker-compose做到这一点?

Docker maven插件ClientProtocolException(使用Docker Toolbox的Windows 10)

我正在尝试使用docker-maven-plugin(由spotify提供: https : //github.com/spotify/docker-maven-plugin )构build一个docker镜像,但事情并没有真正解决。 起初我得到这个例外: org.apache.http.conn.HttpHostConnectException: Connect to localhost:2375 我发现我必须创build一个env。 variables来解决这个问题( https://github.com/spotify/docker-maven-plugin/issues/135 ): set DOCKER_HOST=set DOCKER_HOST=tcp://192.168.99.100:2376 所以在设置env后。 variables我不断收到这个ClientProtocolException: [ERROR] Failed to execute goal com.spotify:docker-maven-plugin:0.3.258:build (default-cli) on project docker_micro_maven: Exception caught: java.util.concurrent.ExecutionException: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: org.apache.http.client.ClientProtocolException: The server failed to respond with a valid HTTP response 我不知道如何解决这个问题,任何input将不胜感激。

Docker和Java IDE集成

我将首先说我不是Java开发人员,也不是Docker专家。 为了最大限度地减less前端和后端(在这个具体的情况下,Java)开发人员之间的差距,我开始把一些docker图像与Java和Maven的地方,构build后,我开始一个docker容器与指向Java项目的卷前端开发人员不必担心依赖关系或如何运行后端服务)。 已经在这里,我有一个问题。 我已经看到其他人用内部的实际代码构build一个图像,而不是稍后再附加它,所以最好的情况是什么(如果有的话)? 我已经这样做了,因为我可以将这个图像重用于“每个”项目,并避免构build不同的图像。 为了启动/停止/重新启动Docker容器,我创build了一个脚本来完成所有这些工作,所以我可以对代码进行一些更改,使其重新启动。 它有点作品,我的意思是,我很清楚这不是一个Java开发人员从控制台做这种东西的正常工作stream程。 所以,现在,最重要的问题是,如何将docker与Java IDE集成? 我知道你可以创build自定义的构build/运行命令,但是我也看到,像日志这样的东西不会显示在IDE上。 有人能解释我如何使用Docker + Java IDE? 注意:Maven也用于编译java代码,比如mvn clean install (如果有帮助的话)

Spotify docker-maven-plugin未经授权:需要身份validation公开回购

我在使用下面的命令将docker映像推送到集线器时遇到问题: mvn clean package docker:build -DpushImage 每次我得到以下回应: [WARNING] Failed to push jdruwe/k8s-product-owner, retrying in 10 seconds (5/5). … [ERROR] Failed to execute goal com.spotify:docker-maven-plugin:0.4.13:build (default-cli) on project k8s-product-owner: Exception caught: unauthorized: authentication required -> [Help 1] 当我尝试使用以下命令之一login时,我不断收到login成功的错误 docker login -u jdruwe https://index.docker.io/v1/ OR docker login 我确实在集线器上创build了一个空的回购,试图解决它: 有任何想法吗?

无法创builddocker访问对象

我想用fabric8的插件进行spring集成testing,但是当我尝试运行testing时,我得到了下一个错误: 无法创builddocker访问对象 我有Ubuntu的,我认为我有良好的configurationdocker,我没有任何问题,docker文件或dockercompose,所以可能会是一个权限问题,或者我忘了一些东西。 我通过下面我的fabric8configuration,这有一个图像的MySQL和maven-failsafe插件集成testing。 <!–maven plugin –> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> <configuration> <environmentVariables> <it-database.port>${it-database.port}</it-database.port> </environmentVariables> </configuration> </plugin> <!–fabric8 plugin –> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.18.1</version> <configuration> <!–<dockerHost>unix:///var/run/docker.sock</dockerHost>–> <dockerHost>tcp://0.0.0.0:2375</dockerHost> </configuration> <executions> <execution> <id>prepare-it-database</id> <phase>pre-integration-test</phase> <goals> <goal>start</goal> </goals> <configuration> <images> <image> <name>mysql:5.7</name> <alias>it-database</alias> <run> <ports> <port>it-database.port:5432</port> </ports> <wait> <log>database system is […]