Gitlab 如何使用不同的docker映像来运行每个阶段的脚本?

Gitlab 如何使用不同的docker映像来运行每个阶段的脚本?,gitlab,gitlab-ci,Gitlab,Gitlab Ci,从.gitlab-ci.yml开始,如下所示: image: docker:latest services: - docker:dind stages: - stage1 - stage2 doStage1: stage: stage1 script: - docker build -t <container> . - docker push <container> only: - master doStage2: stage: st

从.gitlab-ci.yml开始,如下所示:

image: docker:latest
services:
  - docker:dind

stages:
  - stage1
  - stage2

doStage1:
  stage: stage1
script:
  - docker build -t <container> .
  - docker push <container>
only:
  - master

doStage2:
  stage: stage2
  image: alpine:latest
  script:
    script:
     - cat /etc/os-release
only:
  - master

哪个是gitlab runner os,我在这里误解了什么?gitlab ci docs说,我们可以在每个阶段使用不同的docker图像

如果有人对这个问题感兴趣,最后我知道了发生了什么。gitlab runner配置了shell执行器,而不是docker执行器,因为它无法处理image:property

我为另一名跑步者配备了docker executor,一切正常

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.4 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.4 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial