digitallumberjack에서 제공하는 GitLab CI 러너를 사용하려고하는데 컨테이너 내부에서 Docker 명령을 사용할 수 있도록 지원합니다.GitLab CI 러너 컨테이너에서 Docker를 사용할 수 없습니다.
GitLab CI 러너 스크립트 :
docker run --name gitlab-ci-multi-runner -d --restart=always \
--volume /var/run/docker.sock:/var/run/docker.sock \
--volume /mnt/data/gitlab/gitlab-runner:/home/gitlab_ci_multi_runner/data \
--env='CI_SERVER_URL=https://gitlab.dev.abc.net/ci' --env='RUNNER_TOKEN=RijUZPnMjGeNF2JYt' \
--env='RUNNER_DESCRIPTION=runnerA' --env='RUNNER_EXECUTOR=docker' \
--env='RUNNER_DOCKER_IMAGE=docker:17.07.0-ce' --env='RUNNER_DOCKER_MODE=socket' \
--link gitlab.dev.abc.net \
digitallumberjack/docker-gitlab-ci-multi-runner:v9.3.0-1
.gitlab-ci.yml
내용 :
image: node:6.11
types:
- build
- deploy
build_app:
type: build
script: "bash chmod +x ./configure_proxy_artifactory.sh"
script: "bash ./configure_proxy_artifactory.sh"
GitLab CI가 실행을 구축 할 때, 내가 얻을 주자 로그에 다음과 같은 오류 :
./configure_proxy_artifactory.sh: line 13: docker: command not found
Docker가 여전히 위의 러너 스크립트로 구성되어 있지 않습니다. 어떻게이 문제를 해결할 수 있을지 알기나 해?
UPDATE : 나는 당신이 공식 Gitlab 러너의 이미지를 사용하지 않는 이유를 잘 모르겠습니다
[email protected]:/home/gitlab_ci_multi_runner# ls -l /var/run/docker.sock
srw-rw---- 1 root docker 0 Jul 21 00:53 /var/run/docker.sock
[email protected]:/home/gitlab_ci_multi_runner# docker ps
bash: docker: command not found
컨테이너에 액세스하여 도커 ps를 수행 할 수 있습니까? 또한 /var/run/docker.sock이 있는지 그리고 어떤 권한을 가지고 있는지 살펴보십시오. – Sergiu
@Sergiu : 내 게시물의 'UPDATE'를 확인하십시오. – Technext