1

我正在为我的 dockerized Vue 应用程序创建一个新的 Jenkins 管道。

这是我的jenkinsfile内容

#!groovy

pipeline {
    agent any

    stages {
        stage('Checkout') {
            steps {
                echo 'Checking out the PR'
                checkout scm
            }
        }

        stage('Build') {
            steps {
                echo 'Destroy Old Build'
                sh 'make destroy'
                echo 'Building'
                sh 'make exec'
                sh 'npm run build'
            }
        }

        stage('Test') {
            steps {
                echo 'Running Tests'
                sh 'make exec'
                sh 'unset DISPLAY'
                sh 'npm run test:e2e'
            }
        }

        stage('Destroy') {
            steps {
                echo 'Destroy Build'
                sh 'make destroy'
            }
        }
    }
}

这是我的Makefile

up:
    docker-compose -f docker-compose.local.yml up

build:
    docker-compose -f docker-compose.local.yml build

upbuild_d:
    docker-compose -f docker-compose.local.yml up -d --build

exec:
    docker-compose -f docker-compose.local.yml up -d --build && docker exec -t merchant-dashboard bash

test-e2e:
    docker-compose -f docker-compose.local.yml run frontend npm run test:e2e

destroy:
    docker-compose -f docker-compose.local.yml down -v

make exec在执行Build阶段时,在詹金斯上没有完成阶段需要很长时间,直到我失去希望并中止运行。 在此处输入图像描述

知道为什么会发生此问题,因为在我的本地计算机上一切正常。

4

1 回答 1

1

我的问题出在这个命令docker-compose -f docker-compose.local.yml up -d --build && docker exec -t merchant-dashboard bash中。

我是这样修的docker-compose -f docker-compose.local.yml up -d --build && docker exec merchant-dashboard bash -c 'npm run serve &'

提到“docker exec container bash”在詹金斯中不起作用

于 2021-11-23T16:15:19.593 回答