2017-10-05 10 views
0

私は非常に単純なpythonプロジェクトをビルドしてテストするためにpythonイメージを使用しようとしています。しかし、私がJenkinsfileのDocker Image名を与えると、イメージを引っ張ることができません。BlueOcean - Jenkinsが環境のDocker Imageを取得できない

[drone-python_test-jenk-NVHH77CLU5PUMV6UVRK62EARJB3DUVF5FWILYVRZDXOE54RACN2Q] Running shell script 

+ docker pull python 

Using default tag: latest 

Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon. Is the docker daemon running on this host?). Using system default: https://index.docker.io/v1/ 

Cannot connect to the Docker daemon. Is the docker daemon running on this host? 

script returned exit code 1 

JenkinsFile

pipeline { 
    agent { 
    docker { 
     image 'python' 
    } 
    } 
    stages { 
    stage('Build') { 
     steps { 
     sh '''virtualenv --no-site-packages .env 
''' 
     sh '.env/bin/pip install -r dev-requirements.txt' 
     } 
    } 
    stage('Test') { 
     steps { 
     sh 'flake8 setup.py drone tests' 
     } 
    } 
    stage('test2') { 
     steps { 
     sh 'nosetests --with-coverage --cover-package drone -v' 
     } 
    } 
    } 

編集:

version: '2' 

services: 
jenkins: 
    image: jenkinsci/blueocean 
    ports: 
    - 8888:8080 
    volumes: 
    - /var/run/docker.sock:/var/run/docker.sock 
    restart: always 

をドッカー-COMPOSEファイルを使用して、ドッカーホストを搭載しようとした も基ドッカーに添加ユーザjenkins(この正しいユーザであります?) しかし、それでも動作しませんでした。 DroneIOはドッカーイメージを使用して環境を設定しましたが、この問題はありませんでした。

+0

Jenkinsを実行しているホストでドッカーを実行していますか? – KeepCalmAndCarryOn

+0

私はそれのドッカー画像を使用してジェンキンスを実行しています。 –

+0

画像は 'jenkins/blueocean:latest'です –

答えて

0

同じ問題が発生しました。

コンテナ内のDockerデーモンが起動していないようです。私は手動でdocker exec -u root jenkins /bin/sh -c 'dockerd >/var/log/docker.log 2>&1 &'によって始めました。それは動作するようです。

今、私はドッカーデーモンを自動的に起動するためにエントリポイントスクリプトを変更してjenkins/blueocean:latestを終了するDockerfileを構築しようとしています。

関連する問題