服务器:centos8
安装java环境
dnf search java-1.8
dnf install java-1.8.0-openjdk.x86_64
安装Jenkins
Jenkins不在dnf的软件仓库包中,需要连接Jenkins仓库
wget –O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
# 导入GPG密钥以确保您的软件合法
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
# 或者
rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
编辑文件 /etc/yum.repos.d/jenkins.repo
[jenkins]
name=Jenkins-stable
baseurl=http://pkg.jenkins.io/redhat
gpgcheck=1
安装Jenkins
dnf install jenkins
启动Jenkins服务
systemctl start jenkins
systemctl status jenkins
systemctl enable jenkins
Jenkins配置
浏览器访问 你的服务器地址:8080端口
获取管理员密码
cat /var/lib/jenkins/secrets/initialAdminPassword
按照推荐安装插件,完成后新建用户,用新建的用户登录登录
配置node环境:
插件管理,选择可选插件
搜索node,勾选NodeJS Plugin,点击download now and install after restart
全局工具配置中,配置nodejs
新建nodejs,填写别名,选择版本,保存
回到首页,新建任务,填写二任务名称,选择构建一个自由风格的软件项目,确定
填写git仓库地址,此时会报错,需要添加凭着
添加凭证:
用户名为git账号名称,密码为私人令牌(设置—> 私人令牌)
构建触发器
规则为:
#每半小时构建一次OR每半小时检查一次远程代码分支,有更新则构建
H/30 * * * *
#每两小时构建一次OR每两小时检查一次远程代码分支,有更新则构建
H H/2 * * *
#每天凌晨两点定时构建
H 2 * * *
#每月15号执行构建
H H 15 * *
#工作日,上午9点整执行
H 9 * * 1-5
#每周1,3,5,从8:30开始,截止19:30,每4小时30分构建一次
H/30 8-20/4 * * 1,3,5
构建环境,选择之前添加的node版本
构建,选择shell
pwd
node -v
npm -v
rm -rf package-lock.json
rm -rf node_modules
npm install
npm run build
pwd
echo '构建成功'
ls
rm -rf /root/mall_cms/*
cp -rf ./dist/* /root/mall_cms/
保存,构建
踩过的坑:
1、构建时npm install报错,需要删除package-lock.json文件
2、出现Permission denied 提示权限不足:
方法一: 修改vim /etc/sysconfig/jenkins 文件,jenkins改成root,以root账户执行
## Type: string
## Default: "jenkins"
## ServiceRestart: jenkins
#
# Unix user account that runs the Jenkins daemon
# Be careful when you change this, as you need to update
# permissions of $JENKINS_HOME and /var/log/jenkins.
#
JENKINS_USER="root"
之后重启Jenkins
systemctl restart jenkins
笔者试过之后不生效
方法二: 将Jenkins账号加入到root组中
gpasswd -a jenkins root
再次构建,成功