Средство запуска GitLab, похоже, еще не работает в Windows, и существует нерешенная проблема для решения этой проблемы .
Итак, тем временем я перемещаю свой код сценария в сценарий bash, который я могу легко сопоставить с контейнером докера, работающим локально, и выполнить.
В этом случае я хочу создать докер-контейнер в своей работе, поэтому я создаю скрипт build:
docker build --pull -t myimage:myversion .
в моем .gitlab-ci.yaml я выполняю сценарий:
image: docker:latest
services:
- docker:dind
before_script:
- apk add bash
build:
stage: build
script:
- chmod 755 build
- build
Чтобы запустить сценарий локально с помощью PowerShell, я могу запустить требуемое изображение и сопоставить том с исходными файлами:
$containerId = docker run --privileged -d -v ${PWD}:/src docker:dind
установите bash, если его нет:
docker exec $containerId apk add bash
Установите разрешения для сценария bash:
docker exec -it $containerId chmod 755 /src/build
Выполните сценарий:
docker exec -it --workdir /src $containerId bash -c 'build'
Затем остановите контейнер:
docker stop $containerId
И, наконец, очистите контейнер:
docker container rm $containerId