Gitlab runner:有可能 运行 一个 docker 图像依赖于另一个图像

Gitlab runner: It is possible running an docker image that depends from another

场景如下:

我需要 运行 grunt serve 在我使用 docker 容器进行持续集成的过程中在 localhost:9000 中为我的应用程序提供服务,然后我需要 运行另一个容器,使用 localhost:9000 中提供的应用程序执行集成测试:

我的gitlab.yml文件

unit-testing:
  image: karma-testing
  script:
    - npm install && bower install && karma start && grunt serve
  cache:
    paths:
    - node_modules/
    - bower_components/

behavior-testing:
  image: protractor-ci
  script:
    - npm install protractor-cucumber-framework cucumber && xvfb-run --server-args='-screen 0 1280x1024x24' protractor protractor.conf.js
  cache:
    paths:
    - node_modules/
    - bower_components/

第一张图片 运行 在 localhost:9000 中为我的应用程序提供服务的 grunt serve 任务,我希望第二张图片使用此 运行ning 应用程序 运行宁另一个脚本。

不,你不能那样做。作业可以 运行 在不同的 运行 人身上,你无法确定它们是 运行 并行还是串行。

您可以而且应该运行 g运行t 服务器与使用它的服务器在同一任务中。准备好的 docker 图片或 special YAML features 在这里可能会有用。