如何使用docker DIND从gitlab CI中的私有注册表中提取

如何使用docker DIND从gitlab CI中的私有注册表中提取,docker,gitlab,gitlab-ci,gitlab-ci-runner,docker-in-docker,Docker,Gitlab,Gitlab Ci,Gitlab Ci Runner,Docker In Docker,实际上,我正在使用gitlab runners和docker executor,我试图拉一些docker映像来做一些测试,为了保持我的网络连接,我创建了一个私有docker注册表来“缓存”映像 因此,我的注册表链接到我的gitlab runner(配置在config.toml中) 这项工作,我的形象可以问注册表: $ wget http://registry:5000/v2/_catalog --2019-02-15 10:40:54-- http://registry:5000/v2/_c

实际上,我正在使用gitlab runners和docker executor,我试图拉一些docker映像来做一些测试,为了保持我的网络连接,我创建了一个私有docker注册表来“缓存”映像

因此,我的注册表链接到我的gitlab runner(配置在config.toml中)

这项工作,我的形象可以问注册表:

$ wget http://registry:5000/v2/_catalog

--2019-02-15 10:40:54--  http://registry:5000/v2/_catalog
Resolving registry... 172.17.0.3
Connecting to registry|172.17.0.3|:5000... connected.
HTTP request sent, awaiting response... 200 OK
Length: 20 [application/json]
Saving to: '_catalog'

     0K                                                       100% 1.17M=0s

2019-02-15 10:40:54 (1.17 MB/s) - '_catalog' saved [20/20]
但是DIND服务不能:

pull registry:5000/arminc/clair-db:latest
Error response from daemon: Get http://registry:5000/v2/: dial tcp: lookup registry on 192.168.9.254:53: no such host
我的gitlab ci conf用于此任务

scan:image:
  stage: scans
  image: docker:git
  services:
    - name: docker:dind
      command: ["--insecure-registry=registry:5000"]
  variables:
    DOCKER_DRIVER: overlay2
  allow_failure: true
  script:
    - chmod 777 ./docker/scan.sh
    - docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD $DOCKER_REGISTRY
    - ./docker/scan.sh
  artifacts:
    paths: [gl-container-scanning-report.json]
  only:
    - master