【问题标题】:Docker-compose with Gitlab CIDocker-compose 与 Gitlab CI
【发布时间】:2020-02-02 02:39:54
【问题描述】:

我想设置与 Gitlab 的持续集成。我的应用程序是通过许多 docker 容器设置的,这些容器使用 docker-compose 组合在一起。我的.gitlab-ci.yml 看起来像:

image: "docker/compose:1.25.0-rc2-debian"

before_script:
  - docker --version
  - docker info
  - docker-compose build
  - ./bin/start-docker

rspec:
  script:
    - bundle exec rspec

rubocop:
  script:
    - bundle exec rubocop

当我推送时,它会尝试运行 docker-compose build,这反过来又找不到 docker 守护进程。这并不完全令人惊讶,因为我还没有尝试启动 docker 守护进程。但我通常会用systemctl start docker 来做这件事——这会失败,因为跑步者不使用 systemd。

如何让 docker-compose 构建?

一些注意事项:docker --versiondocker-compose --version 表示 docker 和 docker-compose 都安装正确。如果我尝试docker info,则会收到“找不到 docker daemon` 错误。

【问题讨论】:

    标签: docker docker-compose continuous-integration gitlab


    【解决方案1】:

    image: "docker/compose:1.25.0-rc2-debian" 表示您正在 docker runner 上运行您的管道。尝试在安装了 docker 和 docker-compose 并运行 docker daemon 的 shell runner 上运行它。

    其他方法是将 docker-compose 重写为具有适当依赖关系的 .gitlab-ci.yml。

    【讨论】:

      猜你喜欢
      • 2018-03-20
      • 2017-07-06
      • 2021-10-29
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      • 2016-06-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多