.gitlab-ci 中的 Dockerfile 卡在 maven 下载依赖项上

.gitlab-ci 中的 Dockerfile 卡在 maven 下载依赖项上

Ubuntu 20.04 LTS 这是我的极其简单的 Dockerfile:

FROM maven:3.6.3-jdk-11 as build
COPY src/ /usr/src/myapp/src
COPY pom.xml /usr/src/myapp
RUN mvn -X -f /usr/src/myapp/pom.xml package


FROM tomcat:9.0-alpine
COPY --from=build /usr/src/myapp/target/untitled1-1-SNAPSHOT.war /usr/local/tomcat/webapps/ROOT.war
EXPOSE 8080

我尝试了几个项目,结果相同,管道将构建 mvn 并移动到 docker 构建,并卡在从中央下载的不同部分,最终超时

image: docker:latest
services:
  - docker:19.03.15-dind

variables:
  #DOCKER_DRIVER: overlay2
  DOCKER_HOST: tcp://docker:2375
  DOCKER_TLS_CERTDIR: ""

stages:
  - build
  - package

maven-build:
  image: maven:3.6.3-jdk-11
  stage: build
  script: "mvn package -B"
  artifacts:
    paths:
      - target/*.war

docker-build:
  stage: package
  script:
   - docker info
   - docker build -t registry:4567/root/sample .
   - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry:4567
   - docker push registry:4567/root/sample

尝试了不同的图像,但最终都停留在 docker 内部下载,不知道从哪里解决这个问题。

答案1

好吧,我找到了两个解决方案,要么使用 gitlab 应用程序安装 gitlab-runner,要么使用 helm chart 安装 gitlab runner,然后从 /etc/gitlab/ssl 中的 .crt 创建一个秘密,这有助于下一步:)

相关内容