繁体   English   中英

如果可能的话,在 GitLab CI 中的作业 exe 之前运行 Docker Compose 命令

[英]If possible to run a Docker Compose comand before a job exe in GitLab CI

我是 GitLabCI 的新手,似乎 GitLab CI 到处都是 docker。

我试图在运行测试之前运行 Mariadb。 在 Github 动作中,这很容易,只需在我的mvn之前执行docker-compose up -d命令。

当来到 GitLab CI。

我试图使用以下工作来归档目的。

test:
  stage: test
  image: maven:3.6.3-openjdk-16
  services:
    - name: docker
  cache:
    key: "${CI_JOB_NAME}"
    paths:
      - .sonar/cache
      - .m2/repository
  script: |
    docker-compose up -d 
    sleep 10
    mvn clean verify sonar:sonar 

但这不起作用, docker-compose is not found

您可以使用 docker-dind docker -dind并在另一个 docker 容器中运行 docker 命令。

但是默认运行 docker-compose 是有限制的。 建议在 DIND 之上构建自定义镜像并将其推送到 gitlab 镜像注册表。 这样就可以在您的工作中使用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM