Продолжение комментариев : Вы можете зарегистрировать участника с сопоставлением тома на диске хоста, например:
config.toml
concurrent = 6
check_interval = 0
[[runners]]
name = "runner name"
url = "******"
token = "******"
executor = "docker"
[runners.docker]
tls_verify = false
image = "docker:17.06.0-ce"
privileged = false
disable_cache = false
volumes = ["/srv/gitlab-runner/images:/usr/src/app/image-dir", "/cache"]
shm_size = 0
[runners.cache]
Обратите внимание на ключевое слово volumes
выше.
На случай, если вам понадобится рука с запущенным gitlab-runner с докеризацией * с указанным этим томом :
Настройка отдельной сети для бегуна:
$ docker network create gitlab-runner-net
Запустить основной контейнер докера GitLab-runner:
$ sudo docker run -d \
--name gitlab-runner \
--privileged \
--restart always \
--network gitlab-runner-net \
-v /srv/gitlab-runner/config.toml:/etc/gitlab-runner/config.toml \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /srv/gitlab-runner/images:/usr/src/app/image-dir
-e DOCKER_HOST=unix:///var/run/docker.sock \
gitlab/gitlab-runner:alpine
Зарегистрировать участника в GitLab:
$ docker run -it --rm \
-v /srv/gitlab-runner/config.toml:/etc/gitlab-runner/config.toml \
gitlab/gitlab-runner:alpine \
register \
--executor docker \
--docker-image docker:17.06.0-ce \
--docker-volumes /var/run/docker.sock:/var/run/docker.sock
--docker-volumes /srv/gitlab-runner/images:/usr/src/app/image-dir
И измените config.toml
бегуна с указанным выше отображением объема.
Примечание
Приведенная выше конфигурация не является однозначнойтолько это просто контрольная точка, показывающая, как сопоставить тома и в целом, как настроить работающий dind runner, поскольку у gitlab недавно возникли некоторые проблемы с настройкой частных бегунов.