Tag: maven

Maven集成testing2个模块

我有一个应用程序与2个模块: Web JSF(部署在Tomcat上的WAR) REST服务(部署在Wildfly上的WAR) 对于集成testing,我使用Maven插件: maven故障安全插件 fabric8 maven插件 我的testing源代码和资源位于两个应用程序src / integration-test / java中。 在集成testing阶段,fabric8构buildWildfly docker镜像,复制构build的articact(REST Services WAR),启动容器并运行testing。 它工作正常。 但是…我想configurationmaven以部署2个应用程序(Web JSF WAR工件和REST服务WAR),并从JSF WAR / src / integration-test / java运行集成testing。 使用fabric8插件很容易构build和运行Tomcat和Wildfly容器,但我无法find如何从不同的Maven模块部署2个不同的工件。 也许你有什么想法? 最好的问候,MJ。

释放不必要的Docker镜像的空间

我有一个Maven项目,我正在Docker容器中构build和运行。 我的Maven构build需要有一个访问我的项目的GIT存储库的一些提交信息提取,所以我需要暂时包括我的存储库内的图像。 问题是我的存储库权重超过600MB,这使我的形象不必要的巨大。 我无法将我的回购添加到图像,执行一些操作,然后再删除它。 那么,我可以。 但是由于Docker镜像的本质,它不会节省任何空间。 任何想法如何处理这个?

docker文件未find

我正在创build一个maven项目的docker镜像。 这是docker文件 FROM java:8 # Install maven RUN apt-get update RUN apt-get install -y maven WORKDIR ~/mmt/CouchBaseClient/CB-RestAPI/CacheService # Prepare by downloading dependencies #ADD pom.xml /mmt/CouchBaseClient/CB-RestAPI/CacheService/pom.xml #RUN ["mvn", "dependency:resolve"] #RUN ["mvn", "verify"] ADD cacheService-0.0.1-SNAPSHOT.jar /target/cacheService-0.0.1-SNAPSHOT.jar EXPOSE 4567 CMD ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "target/couchclient-0.0.1-SNAPSHOT.jar server cacheService.yml] 当我运行以下命令来build立我的形象 sudo docker build -t myimage . 我得到以下错误 Step 5 : ADD cacheService-0.0.1-SNAPSHOT.jar […]

Docker自动构build从Maven Sonatype Nexus存储库下载私人jar子

我正在build设一个开发渠道。 Docker镜像将在我的Java应用程序的成功和testing版本被部署到私有 Maven仓库(Sonatype Nexus)后自动创build。 一旦我的应用程序构build成功,我需要将它发布到某处,Docker需要有权下载它并创build一个容器。 我想Docker访问Nexus Maven仓库,但我没有find如何从一个私人存储库下载一个jar子。 我没有在Nexus文档中find如何通过身份validation参数来访问专用URL。 有谁知道吗? PS:我也接受更简单的解决scheme来达到这个目的。

不能在docker maven容器中写入〜/ .m2

为什么在构build过程中maven3 docker镜像中的/root/.m2文件不会写入持久化? 一个简单的dockerfile: FROM maven:3-jdk-8 RUN touch /root/.m2/testfilehere && ls -a /root/.m2 RUN ls -a /root/.m2 CMD ["bash"] 生成以下输出。 $ docker build -t test –no-cache . Sending build context to Docker daemon 2.048 kB Step 1 : FROM maven:3-jdk-8 —> 42e3884987fb Step 2 : RUN touch /root/.m2/testfilehere && ls -a /root/.m2 —> Running in 1c1dc5e9f082 […]

如何解决使用Maven将Docker Image推送到私有存储库时的身份validation问题

我试图推动我的Docker镜像,这是我在本地使用maven构build到我的公共/私人存储库在Docker云/ Docker Hub.But我得到索引响应不包含任何端点时,它试图Push.Below是样本我的pom.xml的configuration。 我不知道我错过了哪个configuration。 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.4.11</version> <configuration> <imageName>${docker.image.prefix}/dockercloudappstation</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <!– <dockerHost>tcp://192.168.99.100:2376</dockerHost> –> <serverId>docker-hub</serverId> <!– <registryUrl>https://hub.docker.com/</registryUrl> –> <resources> <resource> <!– <targetPath>/</targetPath> –> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> <executions> <execution> <id>build-image</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> <execution> <id>tag-image-version</id> <phase>package</phase> <goals> <goal>tag</goal> </goals> <configuration> <!– <image>${docker.image.prefix}/${project.artifactId}</image> –> <image>${docker.image.prefix}/dockercloudappstation</image> <newName>hub.docker.com/${docker.image.prefix}/dockercloudappstation</newName> <!– […]

泊坞窗jenkins和声纳设置

我正在尝试安装Jenkins:最新的&Sonarqube:Docker中的最新版本。 我已经在Docker中configuration了这两个系统。 我已经下载了所有需要的Jenkins插件。 它正在运行。 还做了GIT回购代码configuration。 我能够去build立。 我在构build时收到以下错误消息。 我需要在Jenkins中添加哪个插件,或者需要在Maven中添加哪个依赖项? 错误信息 无法执行目标org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar(default-cli)对项目的欢迎:没有find质量configuration文件,您可能没有安装任何语言插件。 build立例外 **[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) on project welcome: No quality profiles have been found, you probably don't have any language plugin installed. -> [Help 1]** org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) on project welcome: No quality profiles have been found, you […]

使用Maven插件无法读取Docker内部的用户input

描述 我正在编写一个简单的控制台应用程序,在Docker容器中启动,读取用户input并处理它。 为了实现Docker自动化,我使用了docker-maven-plugin 。 读取用户input的代码如下: new Scanner(System.in).nextLine() 还尝试了以下内容: new BufferedReader(new InputStreamReader(System.in)).readLine() 在这两种情况下运行没有Docker的应用程序。 我用命令运行docker: mvn clean docker:build docker:run 但是,在Docker中,当涉及到用户input时,代码只返回null ,不会阻止用户input。 在Scanner情况下,我得到了java.util.NoSuchElementException: No line found ,这是基本相同的。 我发现StackOverflow类似的问题,通过命令行参数-i -t似乎帮助。 有什么办法可以将这些命令行参数添加到Maven运行configuration? 或者为什么会出现这个问题 信息 Maven版本:3.3.9 Docker版本:1.13.1

从docker映像运行maven命令

Iam在gitlab runner中构builddocker image因此,Iam使用docker:最新映像,因为我需要将映像推送到registry,但是在构build映像之前,我需要打包我的java项目。 如何使用mavenbuild立项目的docker图像? 现在,gitlab亚军返回错误 $ docker run -it –rm -v "$(pwd)":/opt/maven -w /opt/maven maven:3.3.9-jdk-8 mvn clean install the input device is not a TTY ERROR: Job failed: exit code 1

在Docker版本中安装Maven将使用JAVA 7(!)重写JAVA 8

看来,Maven用Java 7覆盖了Java 8.请考虑以下Dockerfile: FROM java:8 RUN java -version && ls -l /usr/bin/java RUN apt-get update -y && apt-get install maven -y RUN java -version && ls -l /usr/bin/java 第二行会报java版本是1.8 但是第四行会报java版本是1.7。 在这两种情况下, /usr/bin/java符号链接指向/etc/alternatives/java 除了重新安装Java 8(这就是为什么我首先使用Java:8的原因),如何在构buildDocker镜像时取消安装Maven的这些副作用?