Существующий конвейер настроен в соответствии с документами
image: docker:stable
variables:
DOCKER_HOST: tcp://docker:2375/
DOCKER_DRIVER: overlay2
services:
- docker:dind
before_script:
- docker version
stages:
- test
test:lint:
stage: test
tags:
- docker
cache:
paths:
- node_modules/
script:
- npm i -g yarn
- yarn
- yarn lint
Трубопроводная добыча падает, как и ожидалось
$ npm i -g yarn
/bin/sh: eval: line 85: npm: not found
но я успешно получаю информацию о докере из секции before_script
, потому что у меня есть docker
сервисы, созданные глобально
Затем я хочу отредактировать свою неудавшуюся работу и основать ее на изображении с помощью node
, где я могу использовать команду npm
.
Новый трубопровод
image: docker:stable
variables:
DOCKER_HOST: tcp://docker:2375/
DOCKER_DRIVER: overlay2
services:
- docker:dind
before_script:
- docker version
stages:
- test
test:lint:
image: node:10.13-alpine
stage: test
tags:
- docker
cache:
paths:
- node_modules/
script:
- npm i -g yarn
- yarn
- yarn lint
и получите ошибку для before_script
/bin/sh: eval: line 83: docker: not found
$ docker version
почему я получаю такое поведение? В документах я не могу найти информацию об этом поведении