Java 从docker映像运行maven命令
我正在gitlab runner中构建docker形象。 因此,我使用的是docker:LastImage,因为我需要将映像推送到注册表,但在构建映像之前,我需要打包我的java项目。 如何将docker映像与maven一起用于构建项目 现在,gitlab runner返回一个错误Java 从docker映像运行maven命令,java,maven,docker,continuous-integration,gitlab,Java,Maven,Docker,Continuous Integration,Gitlab,我正在gitlab runner中构建docker形象。 因此,我使用的是docker:LastImage,因为我需要将映像推送到注册表,但在构建映像之前,我需要打包我的java项目。 如何将docker映像与maven一起用于构建项目 现在,gitlab runner返回一个错误 $ docker run -it --rm -v "$(pwd)":/opt/maven -w /opt/maven maven:3.3.9-jdk-8 mvn clean install the input dev
$ 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
您不需要(也不能)以交互方式运行容器,也不能在Gitlab中分配TTY。因此,从docker跑步中删除-it
:
docker run --rm -v "$(pwd)":/opt/maven -w /opt/maven maven:3.3.9-jdk-8 mvn clean install
不客气!您可以标记为,如果我在调用“代码> MVN包< /代码>后,在哪里可以找到我的WAR文件?只是为了解决这个问题:<代码> DOKER Run-RM -V“$(PWD)”:/opt/Maven -W/opt/Maven Maven:3.3.9 JDK-8SH-C“MVN CurryEngult;find //GRIP名称”< /C> >(将您正在搜索的文件名中的某些部分放入其中)我在[/opt/maven/web/target/web][code>[INFO]构建战争:/opt/maven/web/target/web.war
中只看到了这个[INFO]组装webapp[web]的过程,因此战争发生在gitlab本地的$(pwd)/web/target/web.war
中