2017-02-21 21 views
4

gitlabでCIを構築しようとしていますが、私はドッカーのドッカー画像から行っています。フロントリポジトリに問題はありませんでしたが、同じgitlab-ci設定ファイルに戻って、私はこのデーモンのエラーがあります。ここでドッカーのドッカー画像でデーモンドッカーに接続できません

は、ビルドの出力である:ここで

[0KRunning with gitlab-ci-multi-runner 1.10.4 (b32125f)[0;m 
[0;m[0KUsing Docker executor with image docker:1.13.1 ... 
[0;m[0KPulling docker image docker:1.13.1 ... 
[0;mRunning on runner-4e4528ca-project-1649638-concurrent-0 via runner-4e4528ca-machine-1487688057-7c0f1e46-digital-ocean-4gb... 
[32;1mCloning repository...[0;m 
Cloning into '/builds/***/formation-back'... 
[32;1mChecking out af7cbcae as docker...[0;m 
[32;1mSkipping Git submodules setup[0;m 
[32;1m$ docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com[0;m 
Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?). Using system default: https://index.docker.io/v1/ 
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 
[31;1mERROR: Build failed: exit code 1 
[0;m 

は私の.gitlab-ci.ymlです:

concurrent = 1 
check_interval = 0 

[[runners]] 
    name = "***" 
    url = "https://gitlab.com/ci" 
    token = "750c63cba1c269d789bdb33c42b726" 
    executor = "docker" 
    [runners.docker] 
    tls_verify = false 
    image = "alpine:3.5" 
    privileged = true 
    disable_cache = false 
    volumes = ["/cache", "/var/run/docker.sock:/var/run/docker.sock"] 
    [runners.cache] 
:ここ

image: docker:1.13.1 

stages: 
    - build 
    - test 
    - deploy 

variables: 
    BUILD_IMG: $CI_REGISTRY_IMAGE:$CI_BUILD_REF 
    TEST_IMG: $CI_REGISTRY_IMAGE:$CI_BUILD_REF_NAME 
    RELEASE_IMG: $CI_REGISTRY_IMAGE:latest 
    AWS_STAGING_ENV: "***" 
    AWS_PROD_ENV: "***" 
    DOCKERRUN: Dockerrun.aws.json 
    DEPLOY_ARCHIVE: ${AWS_APP}-${CI_BUILD_REF}.zip 

before_script: 
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com 
    - .ci/before_script 

build: 
    stage: build 
    script: 
    - docker build --pull -t $BUILD_IMG . 
    - docker push $BUILD_IMG 

test: 
    stage: test 
    script: 
    - docker pull $BUILD_IMG 
    - docker run --rm $BUILD_IMG npm run test 
    - docker tag $BUILD_IMG $TEST_IMG 
    - docker push $TEST_IMG 

deploy:staging: 
    stage: deploy 
    environment: Staging 
    variables: 
    DOCKER_IMG: ${CI_REGISTRY_IMAGE}:${CI_BUILD_REF} 
    script: 
    - ./.ci/create-deploy-archive $DOCKER_IMG $AWS_BUCKET $DOCKERRUN $DEPLOY_ARCHIVE 
    - ./.ci/aws-deploy $DEPLOY_ARCHIVE $CI_BUILD_REF $AWS_STAGING_ENV 
    artifacts: 
    paths: 
    - $DEPLOY_ARCHIVE 
    except: 
    - production 

deploy:production: 
    stage: deploy 
    environment: Production 
    variables: 
    DOCKER_IMG: ${CI_REGISTRY_IMAGE}:latest 
    script: 
    - .ci/push-new-image $TEST_IMG $RELEASE_IMG 
    - .ci/create-deploy-archive $DOCKER_IMG $AWS_BUCKET $DOCKERRUN $DEPLOY_ARCHIVE 
    - .ci/aws-deploy $DEPLOY_ARCHIVE $CI_BUILD_REF $AWS_PROD_ENV 
    artifacts: 
    paths: 
    - $DEPLOY_ARCHIVE 
    only: 
    - production 
    when: manual 

は私config.tomlファイルです

ここにドッカーの情報があります:

DEBU[0771] Calling GET /v1.24/info 
Containers: 1 
Running: 1 
Paused: 0 
Stopped: 0 
Images: 1 
Server Version: 1.12.6 
Storage Driver: devicemapper 
Pool Name: docker-202:1-395267-pool 
Pool Blocksize: 65.54 kB 
Base Device Size: 10.74 GB 
Backing Filesystem: xfs 
Data file: /dev/loop0 
Metadata file: /dev/loop1 
Data Space Used: 519 MB 
Data Space Total: 107.4 GB 
Data Space Available: 6.569 GB 
Metadata Space Used: 1.397 MB 
Metadata Space Total: 2.147 GB 
Metadata Space Available: 2.146 GB 
Thin Pool Minimum Free Space: 10.74 GB 
Udev Sync Supported: true 
Deferred Removal Enabled: false 
Deferred Deletion Enabled: false 
Deferred Deleted Device Count: 0 
Data loop file: /var/lib/docker/devicemapper/devicemapper/data 
WARNING: Usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device. 
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata 
Library Version: 1.02.93-RHEL7 (2015-01-28) 
Logging Driver: json-file 
Cgroup Driver: cgroupfs 
Plugins: 
Volume: local 
Network: bridge overlay null host 
Swarm: inactive 
Runtimes: runc 
Default Runtime: runc 
Security Options: 
Kernel Version: 4.4.44-39.55.amzn1.x86_64 
Operating System: Amazon Linux AMI 2016.09 
OSType: linux 
Architecture: x86_64 
CPUs: 1 
Total Memory: 995.2 MiB 
Name: ip-172-31-30-143 
ID: D6DU:OBWL:R3HK:DSZK:EOYC:5EHS:NU4I:4M3T:H5PL:JWLH:CIPD:I7VW 
Docker Root Dir: /var/lib/docker 
Debug Mode (client): false 
Debug Mode (server): true 
File Descriptors: 20 
Goroutines: 27 
System Time: 2017-02-22T11:16:19.042666914Z 
EventsListeners: 0 
Registry: https://index.docker.io/v1/ 
Insecure Registries: 
127.0.0.0/8 
+0

gitlabをホストしているマシンから 'docker info'の結果を追加できますか? – jrbeverly

+0

'gitlab-runner'の' config/config.toml'ファイルの内容を追加できますか? –

+0

私は同じ問題があります。 config.tomlに 'privileged = true'を設定しました。 ドッカーイメージを手動で起動するときにも起動します。 –

答えて

4

あなたの.gitlab-ci.yml

services: 
    - docker:dind 

を追加する必要があります。これは、ランナーに、動作中のドッカーデーモンのイメージである第2のコンテナ(docker:dind)を開始するように指示します。それは実行するために2番目のイメージにある必要があります。詳細については

は、ドッキングウィンドウのサンプルプロジェクトを参照してください。https://gitlab.com/gitlab-examples/docker/blob/master/.gitlab-ci.yml

全く実行されているドッキングウィンドウデーモンが存在しないので、それがサービスなしでは動作しませんし、あなたがdocker:dind容器内のビルドを実行することはできませんrunコマンド理由ドッカーデーモンが置き換えられます。

+0

こんにちはJosef Hoppeさん、ありがとうございました。私はこのサービスを諦めていませんでした.2つのプロジェクトで2人のランナーを走らせて問題を解決しました。私はそれがそのように働いているか分からない:/ –

+0

ありがとう! –

関連する問題