我有以下.gitlab-ci.yml文件:
image: docker:latest
variables:
DOCKER_DRIVER: overlay2
services:
- docker:dind
before_script:
- docker info
stages:
- deploy
step-deploy-dev:
stage: deploy
script:
- echo build and deploy
- docker build -t myimage myproject/.
- echo finished build and deploy..
environment: master
有时(我无法确定原因),我收到以下错误:
Running with gitlab-runner 10.8.0 (079aad9e)
on My-CI de8391de
Using Shell executor...
Running on DEVServer01...
Fetching changes...
HEAD is now at e5f12f9 Update .gitlab-ci.yml
From http://gitlab.ourinternalserver.nl/my/myproject
e5f12f9..3b46be8 master -> origin/master
Checking out 3b46be8a as master...
Skipping Git submodules setup
$ docker info
'docker' is not recognized as an internal or external command,
operable program or batch file.
ERROR: Job failed: exit status 9009
答案 0 :(得分:2)
在看到此错误的情况下,您的作业在配置了错误执行程序的运行程序上运行。您的工作需要使用docker executor的跑步者。
您可以在输出中看到:
Using Shell executor...
应该说
Using Docker executor with image docker:latest ...
您可以标记作业和docker运行程序,以确保作业仅在所需的运行程序上运行。 注册跑步者时,请指定标签,例如“ docker”,然后在作业配置中添加标签属性:
step-deploy-dev:
stage: deploy
script:
- echo build and deploy
- docker build -t myimage myproject/.
- echo finished build and deploy..
environment: master
tags:
- docker