Как я могу использовать агент докер в декларативном конвейере, работающем на узле jenkins ssh-slave? - PullRequest
0 голосов
/ 14 февраля 2019

Я управляю Дженкинс-мастером и слэйвом как контейнер докеров.Я настроил подчиненный узел, используя образ jenkins / ssh-slave с меткой 'worker'.Я могу успешно запустить свой конвейер на рабочем узле.Однако, когда я пытаюсь запустить команду сборки docker с помощью Jenkinsfile, я получаю сообщение об ошибке docker: not found.

pipeline {
agent { label 'worker' }
tools {nodejs "node"}
stages {
    stage ('Build APP') {
        steps {
            echo 'BUILDING APPLICATION'
            sh 'npm install'
        }
    }

    stage ('Create Package') {
        steps {
            script{
                echo 'BUILDING DOCKER IMAGE'
                docker.build("package${env.BUILD_NUMBER}")
            }
        }
    }

    stage('Package Test') {
        agent { docker }
        steps {
            echo 'RUNNING IMAGE IN CONATAINER'
            sh "docker run -p 5050:4000 -d package${env.BUILD_NUMBER}"
            echo 'CHECKING HEALTH STATUS'
            script {
                try {
                    sh "curl -s --head --request GET http://127.0.0.1:5050/ | grep '200'"
                    echo 'Health Check Passed!'
                } catch(Exception e) {
                    echo "Health Check Failed!"
                }
            }
        }
    }

В третьем шаге «тестирование пакета» я поместил в файл агентский докер, но онне похоже на работу.Как поместить агент докер в декларативный конвейер?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...