Jenkins 从零搭建
前言
下载地址:https://jenkins.io/zh/download/
war 包下载地址:https://jenkins.io/zh/doc/pipeline/tour/getting-started/
安装
tomcat 安装方式
1. 将 jenkins.war 包解压到 apache-tomcat-9.0.24/webapps/ROOT 目录 2. 执行 apache-tomcat-9.0.24/bin/startup.sh ,启动 tomcat (默认端口为8080) 3. 访问 IP:PORT 即可
java 安装方式
# 直接运行下面命令,访问 IP:PORT 即可 java -jar jenkins.war --httpPort=8080
docker 方式
docker pull jenkins docker run -di --name jenkinsName -p 8080:8080 -p 50000:50000 jenkins # 访问 IP:8080 端口即可
Jenkins 一些问题及其解决方案
Jenksin 持续集成持续部署 SpringBoot 项目
配置 JDK/MAVEN/GIT
首先在服务器上安装 JDK、MAVEN、GIT,
Manage Jenkins -> Global Tool Configuration
JDK
点击 JDK installations…,配置服务器上的 JDK 路径
GIT
可以直接在服务器上 yum install git, 这样 GIT 可以直接默认即可
MAVEN
点击 Maven installations…,配置服务器上的 MAVEN 路径
配置项目
New item -> Enter an item name ,选中项目类型(比如 Maven project)
配置 General
配置 Source Code Management
配置 Buld Triggers
配置构建前操作、构建命令、构建后操作
配置构建后一些其他功能,比如邮件通知
编译日志
访问测试
start.sh 脚本
#!/bin/sh -l java=/usr/local/apps/jdk/jdk1.8.0_211/bin/java echo '脚本执行开始' project_dir=/opt/apps/maven-for-jenkins history_dir="history" project_name=maven-for-jenkins # 如果项目存在杀死旧项目进程 ps -ef | grep ${project_name} | grep -v grep | awk '{print $2}' | xargs kill -9 # 备份旧项目 sudo mv ${project_dir}/${project_name}.jar ${project_dir}/${history_dir}/${project_name}.jar.$(date "+%Y-%m-%d-%H:%M:%S") # 将构建好的新项目拷贝到项目目录下 sudo cp /root/.jenkins/workspace/${project_name}/target/${project_name}.jar ${project_dir} # BUILD_ID=dontKillMe 保证 Jenkins 完成构建后,可以正常退出,项目正常在后台运行 BUILD_ID=dontKillMe nohup $java -jar ${project_dir}/${project_name}.jar & echo '脚本执行结束'
发送邮件
一、安装插件 Email Extension Plugin
Manage Jenkins -> Manage Plugins -> Email Extension Plugin
二、Manage Jenkins -> Configure System
配置 Jenkins Location
- 配置 Jenkins URL 默认即可
- 配置系统管理员邮箱地址(System Admin e-mail address):
配置 Extended E-mail Notification
- 配置 SMTP server
- 配置高级(Advanced…)
- 配置 User Name & Password & SMTP port,主题、内容可以默认,也可自行设计
- 配置触发器(Default Triggers…):即什么时候发送邮件
三、进入构建项目中配置
Post-build Actions -> Add post-build action -> Editable Email Notification
Project Recipient List 多个用户使用英文逗号隔开 ‘,’
[外链图片转存失败(img-sAnbUjM0-1566624298927)(Jenkins邮件配置.png)]
权限管理配置
一、安装插件 Role-based Authorization Strategy
二、配置 Configure Global Security
Security Realm 设置成 Jenkins’ own user database
Authorization 设置成 Role-Based Strategy
保存
三、创建新用户
Manage Jenkins -> Manage Users -> Create User
四、配置 Manage and Assign Roles
Manage Jenkins -> Manage and Assign Roles
Manage Roles 管理角色
Assign Roles 授权角色
age Users -> Create User