一 Jenkins要用服务器本地安装
jenkins下载地址:
1.官网下载
2.linux下载
wget -O jenkins.war http://mirrors.jenkins.io/war-stable/latest/jenkins.war
启动脚本
1.直接启动
cd xxx/
nohup java -jar jenkins.war >jenkins.log 2>&1 &
2.sh 文件启动
vim jenkins.sh
#!/bin/bash
###主要目的用于开机启动服务,不然 启动jenkins.war包没有java -jar的权限
JAVA_HOME=/usr/local/src/jdk1.8.0_192
JENKINS_HOME=/usr/local/src/jenkins
pid=`ps -ef | grep jenkins.war | grep -v 'grep'| awk '{print $2}'| wc -l`
if [ "$1" = "start" ];then
if [ $pid -gt 0 ];then
echo 'jenkins is running...'
else
### java启动服务 配置java安装根路径,和启动war包存的根路径
nohup $JAVA_HOME/bin/java -jar $JENKINS_HOME/jenkins.war --httpPort=8080 2>&1 &
fi
elif [ "$1" = "stop" ];then
exec ps -ef | grep jenkins | grep -v grep | awk '{print $2}'| xargs kill -9
echo 'jenkins is stop..'
else
echo "Please input like this:"./jenkins.sh start" or "./jenkins stop""
fi
根据 “自己的java,jenkins.war安装目录” 修改脚本,我的脚本放在/usr/local/src/jenkins/目录下
###启动jenkins
cd /xxx ##.sh文件目录
sudo sh jenkins.sh start
###停止jenkins
sudo sh jenkins.sh stop
心得:千万不要docker启动Jenkins因为 你可能需要在完成构建后启动 docker
那么就需要在 docker在启动一个docker比较麻烦不建议
二 pipeLine前端流水线构建模板
node{
// checkout git
stage('git pull'){
checkout([$class: 'GitSCM'
, branches: [[name: '*/master']]
, doGenerateSubmoduleConfigurations: false
, extensions: []
, submoduleCfg: []
, userRemoteConfigs: [[credentialsId: '638d471c-e9de-4420-88df-32a310d3c4c5'
, url: 'https://git.rp-field.com/ai/fe-petpedia-mob.git']]])
}
//npm build
stage('npm build') {
nodejs('NodeJsV14.15.1') {
// npm 编译安装
sh '''
npm config set registry http://registry.npm.taobao.org/''
npm install
npm run build:h5-test
'''
}
}
//docker tag and push harbor
stage('docker镜像启动'){
sh '''
cd docker-test
sh deploy.sh restart
'''
}
}
1.credentialsId:
系统管理>>==>Manage Credentials 唯一ID
2.nodejs 版本
系统管理==>>全局工具配置==>nodejs 别名
如果没有NodeJs 请去插件管理中 安装NodeJs插件