pipeline { agent any environment { BRANCH_NAME="${env.BRANCH_NAME}".toLowerCase() } stages { stage('Build') { agent { docker { image 'node:16-alpine' args '-v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose' } } steps { sh 'docker-compose down' sh 'npm install --registry https://registry.npm.taobao.org' sh 'npm run build:prod' sh 'docker build -t ${BRANCH_NAME}:${BUILD_NUMBER} .' } } stage('Test') { steps { echo 'Testing..' } } stage('Deploy') { steps { echo 'Deploying....' sh 'docker-compose up -d' } } } }