我想将我的Maven / Java应用程序打包到Docker Gitlab CI运行器中。
我在公司代理人后面。这是我的.gitlab-ci.yml
:
image: maven:3-jdk-7
build:
script: "mvn clean package -B"
当触发构建时,我收到此错误(在Gitlab构建控制台中):
未知主机repo.maven.apache.org:名称或服务未知 - > [帮助1]
然后,我添加了
variables:
http_proxy: http://user:pass@corp.proxy.ip:port
到.gitlab-ci.yml
。但我得到另一个错误:
致命:无法访问 ' http://gitlab-ci-token:xxxxxx@170.20.20.20:8080/myapp.git/&#39 ;: 请求的URL返回错误:504
当我注册Docker runner时,选择的Docker镜像为maven:3-jdk-7
。
我刚尝试添加no_proxy
变量和172.20.20.20作为值(Gitlab IP),但我得到了同样的错误(第一个。)
我该如何解决?有没有办法强制Docker runner(容器)使用--net=host
?
答案 0 :(得分:3)
我做的是我必须打开mvnw文件。在里面我发现了这一行
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
在')'和$ MAVEN_OPTS之间,我放置了
-Dhttps.proxyHost=yourHost -Dhttps.proxyPort=yourPort
参数。这对我有用。希望这可以帮助。我不需要你上面描述的“变量”部分。