【发布时间】:2025-12-16 14:50:02
【问题描述】:
我正在尝试使用 digitallumberjack 提供的 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 仍然没有配置上述运行脚本。知道如何解决这个问题吗?
更新:在容器内,这是我的观察:
root@5489eb3ebe42:/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
root@5489eb3ebe42:/home/gitlab_ci_multi_runner# docker ps
bash: docker: command not found
【问题讨论】:
-
你能访问容器并做一个 docker ps 吗?并查看 /var/run/docker.sock 是否存在以及它具有什么权限
-
@Sergiu:请查看我帖子中的
UPDATE。
标签: docker gitlab gitlab-ci gitlab-ci-runner