【问题标题】:Execution of docker file fails via jenkins通过詹金斯执行docker文件失败
【发布时间】:2019-06-16 06:45:06
【问题描述】:

当我在 cmd 上运行以下命令时,它运行良好,输出如下:

$ docker run --env-file /home/sonarqube/pr-config.env -d --add-host="host1:192.168.0.18" 243c286dec63 94ab7264a038dc6a91f5e457e19fba8effa48d82153fe945d06cd64aec4f369f

$ docker logs 94ab7264a038dc6a91f5e457e19fba8effa48d82153fe945d06cd64aec4f369f

============= 测试会话开始 ============

平台 linux -- Python 3.6.7、pytest-4.0.2、py-1.7.0、pluggy-0.8.1 rootdir: /code,inifile: 收集到 6 个项目

预测器/测试/test_server.py ......
[100%]
========== 6 在 1.31 秒内通过 ==========

但是当我通过 jenkins 管道运行相同的命令时,它会失败并出现以下错误:

requests.exceptions.ConnectionError: HTTPConnectionPool(host='host1', 端口 = 8088):最大重试次数超出 url://predict/api/v1(由 NewConnectionError(': 建立新连接失败: [Errno -2] Name 或服务未知',))

/usr/lib/python3.6/site-packages/requests/adapters.py:516: 连接错误

Jenkins文件如下:

    def awesomeVersion = 'UNKNOWN'
pipeline {
    agent any

    stages {
        stage('SCM Checkout') {
            steps {
                git branch: 'master', url: 'git@github.com:xyx.git'
            }
        }
        stage('Docker build'){
            steps{
                script {
          awesomeVersion = sh(returnStdout: true, script: 'hostname --ip-address')
        }
            sh "docker run --env-file /home/sonarqube/pr-config.env -d --add-host='host1:${awesomeVersion}' 243c286dec63"
            }
        }
    }
}

谁能告诉我为什么它会失败?

【问题讨论】:

  • 解决方案是传递公共 ip,但会导致另一个问题,我必须阅读有关如何使两个容器通过 compose 进行通信的问题

标签: docker jenkins dockerfile


【解决方案1】:

可以使用这个新的 jenkins 文件来解决问题

    def awesomeVersion = 'UNKNOWN'
pipeline {
    agent any

    stages {
        stage('SCM Checkout') {
            steps {
                git branch: 'master', url: 'git@github.com:rahul-padhee/Sigmoid.git'
            }
        }
        stage('Docker build'){
            steps{
                script {
          awesomeVersion = sh(returnStdout: true, script: 'curl --silent http://169.254.xxx.xxx/latest/meta-data/public-ipv4')
        }
            sh "docker run --env-file /home/sonarqube/pr-config.env -d --add-host='host1:${awesomeVersion}' 243c286dec63"
            }
        }
    }
}

【讨论】:

    猜你喜欢
    • 2020-08-01
    • 2015-03-19
    • 2014-11-24
    • 1970-01-01
    • 1970-01-01
    • 2017-01-29
    • 1970-01-01
    • 2018-05-13
    • 1970-01-01
    相关资源
    最近更新 更多