CentOS7.2 Jenkins部署
1、安装配置java环境
- 直接下载二进制安装包:
# tar xvf jdk-8u111-linux-x64.tar.gz -C /usr/local/src/
# ln -sv /usr/local/src/jdk1.8.0_111 /usr/local/jdk
# vim /etc/profile
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
# source /etc/profile && java –version
- 使用rpm包安装:
# rpm –ivh jdk-8u111-linux-x64.rpm
- 使用yum仓库安装:java-1.8.0-openjdk-1.8.0
# yum install java-1.8.0-openjdk-1.8.0 -y
2、安装Jenkins
- 通过rpm包安装Jenkins
# rpm –ivh https://pkg.jenkins.io/redhat/jenkins-2.27-1.1.noarch.rpm
# /etc/init.d/jenkins start
# chkconfig jenkins on
3、配置Jenkins
# vim /etc/sysconfig/jenkins
JENKINS_HOME=“/var/lib/jenkins“ #数据目录,使用高IO大容量磁盘
JENKINS_USER=“jenkins“ #启动用户
JENKINS_PORT=“8080“ #启动端口
4、访问web界面
- jenkins第一次启动会生成一个随机密码,查看web界面提示文件即可查看到密码信息

5、安装插件
- 默认插口可能有些插件无法安装,可以后期安装
- 亦可自己选择不安装所以插件


6、手动安装插件
# cd /var/lib/jenkins/plugins
# tar xvf jenkins_plugin.tar.gz #打包的一个插件包,展开即可使用插件
# chown jenkins.jenkins ./* -R
# /etc/init.d/jenkins start
- 插件下载地址
http://updates.jenkins-ci.org/download/plugins/
7、创建用户
- 创建登陆用户

- 账号创建完成:

8、登陆

9、邮件配置
- 点击 系统管理 --> 系统设置

10、发送邮件设置
- 点击 系统管理 --> 系统设置

11、配置从gitlab上拉取代码
- 需要安装的插件:
gitlab Plugin gitlab Hook Plugin

12、添加Git用户
参考此文档配置:http://www.cnblogs.com/python-gm/p/8883515.html
13、Jenkins上添加一个认证用户
- 此处用户应该为步骤12中,在GitLab中添加公钥的用户
配置地址:http://172.20.3.206:8080/credentials/store/system/domain/_/newCredentials

14、Jenkins创建项目
- 进入Jenkins首页,点击新建,创建一个新的项目

15、配置Jenkins项目详细信息
- 描述信息

- 配置GitLab地址和拉取代码的用户

- 保存项目并测试(点击立即构建)

16、部署代码检测工具:Sonar
- 安装数据库:数据库要使用5.6版本,不支持5.5的版本
# tar xvf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz
# ln -sv /usr/local/src/mysql-5.6.34-linux-glibc2.5-x86_64 /usr/local/mysql
# cd /usr/local/mysql/
# useradd mysql -s /sbin/nologin
# chown -R mysql.mysql ./* -R
# mkdir /data && chown mysql.mysql /data/ -R
# /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/ --basedir=/usr/local/mysql/
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# cp /usr/local/mysql/my.cnf /etc/my.cnf
# vim /etc/my.cnf
basedir = /usr/local/mysql
datadir = /data
port = 3306
# /etc/init.d/mysql start
#ln -sv /usr/local/mysql/bin/mysql /usr/bin/
- mysql授权:
# /usr/local/mysql/bin/mysql
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL ON sonar.* TO sonar@"jenkins-server.com.cn" IDENTIFIED BY "123456";
GRANT ALL ON sonar.* TO sonar@"192.168.10.%" IDENTIFIED BY "123456";
FLUSH PRIVILEGES;
/usr/local/mysql/bin/mysql -usonar -p123456 -h192.168.10.131

- 部署sonar
### sonar依赖于java环境,而且java版本必须是1.8版本或更高,否则sonar启动失败 # unzip sonarqube-5.6.zip
# ln -sv /usr/local/src/sonarqube-5.6 /usr/local/sonar
# grep "^[za-Z]" /usr/local/sonar/conf/sonar.properties
sonar.jdbc.username=sonar
sonar.jdbc.password=123456
sonar.jdbc.url=jdbc:mysql://192.168.10.131:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.web.port=8800 # /usr/local/sonar/bin/linux-x86-64/sonar.sh start
- 登陆sonar web站点:点击有上角login登录,默认用户名密码都是admin
- 安装中文插件
- 点击:administration --> system --> update center --> available,在后面的搜索框搜索插件名称(chinese),然后点install安装
- 或在插件目录/usr/local/sonar/extensions/plugins执行
wget https://github.com/SonarQubeCommunity/sonar-l10n-zh/releases/download/sonar-l10n-zh-plugin-1.11/sonar-l10n-zh-plugin-1.11.jar
- 然后重启服务:
# /usr/local/sonarqube-5.6/bin/linux-x86-64/sonar.sh restart
17、部署扫描器
- Sonar通过扫描器进行代码质量分析,即扫描器的具体工作就是扫描代码:
# 下载地址:http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner # unzip sonar-scanner-2.6.1.zip
# ln -sv /usr/local/src/sonar-scanner-2.6.1 /usr/local/sonar-scanner
# cd /usr/local/sonar-scanner/
# grep "^[a-Z]" conf/sonar-scanner.properties
sonar.host.url=http://localhost:8800
sonar.sourceEncoding=UTF-8
sonar.jdbc.username=sonar
sonar.jdbc.password=123456
sonar.jdbc.url=jdbc:mysql://192.168.10.131:3306/sonar?useUnicode=true&characterEncoding=utf8
18、jenkins关联到sonar和sonar-scanner
- 在jenkins插件安装界面安装Sonar插件SonarQube Plugin
- 点击: 系统管理 - 系统设置

- 填写sonar服务器信息:

- 添加扫描器
- 点击: 系统管理 --> Global Tool Configuration(全局管理)

20、项目配置扫描功能
- 选择自己的项目 (demo) --> 构建触发器 --> 构建 --> execute sonarqube scanner ,将配置文件的内容修改成如下格式填写完成后点保存:
sonar.projectKey=test-demo
sonar.projectName=test-demo
sonar.projectVersion=1.0
sonar.sources=./
sonar.language=java|php|python #(java|php|python 需要在sonar中安装对应的java|php|python语言包)
sonar.sourceEncoding=UTF-8

- 点击项目的立即构建,下图是执行成功的信息:

- 查看项目的构建历史:

21、构建失败邮件通知
- 构建失败后会发送邮件通知管理员:选择自己的项目 (demo) --> 构建后操作

- 构建失败的邮件通知

CentOS7.2 Jenkins部署的更多相关文章
- Centos7 & Docker & Jenkins & ASP.NET Core 2.0 自动化发布和部署
写在前面 Docker一直很火热,一直想把原本的Jenkins自动部署工具搬到Docker上面,无奈今年一直忙于各种事情,迟迟未实施这个事情,正好迎来了dotnet core 2.0 的正式发布,升级 ...
- centos7搭建sonarqube环境+jenkins部署全流程
一.简介sonarqube是一个用于代码质量管理的开源平台,用于管理源代码的质量 不遵循代码标准sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写.潜在的 ...
- springboot(十六):使用Jenkins部署Spring Boot
jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署分为三个步骤: 第一步,jenkins安装 第二步,插件安装和配置 第 ...
- jenkins部署net core初探
一步一步,小心翼翼吖.看了好几个博客,摸索了两天了,才搭建成功,不容易,先写篇文章记下来,hhhhhhhhhhhh 相关环境配置 服务器:centos7 源代码管理器:git 技术选型:net cor ...
- (转)Spring Boot(十六):使用 Jenkins 部署 Spring Boot
http://www.ityouknow.com/springboot/2017/11/11/spring-boot-jenkins.html enkins 是 Devops 神器,本篇文章介绍如何安 ...
- 使用Jenkins部署Spring Boot项目
jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署分为三个步骤: 第一步,jenkins安装 第二步,插件安装和配置 第 ...
- Spring Boot(十六):使用 Jenkins 部署 Spring Boot
Jenkins 是 Devops 神器,本篇文章介绍如何安装和使用 Jenkins 部署 Spring Boot 项目 Jenkins 搭建.部署分为四个步骤: 第一步,Jenkins 安装 第二步, ...
- Spring Boot(十六):使用Jenkins部署Spring Boot
Spring Boot(十六):使用Jenkins部署Spring Boot jenkins是devops神器,介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署 ...
- spring boot(十六)使用Jenkins部署spring boot
jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署分为三个步骤: 第一步,jenkins安装 第二步,插件安装和配置 第 ...
随机推荐
- JSP笔记05——生命周期(转)
原始内容:https://www.tutorialspoint.com/jsp/jsp_life_cycle.htm 在这一章中,我们将讨论JSP的生命周期. 理解JSP低层次功能的关键在于——理解它 ...
- 学习C#之旅 冒泡排序,选择排序,插入排序,希尔排序[资料收集]
关于冒泡排序,选择排序,插入排序,希尔排序[资料收集] 以下资料来源与网络 冒泡排序:从后到前(或者从前到后)相邻的两个两两进行比较,不满足要求就位置进行交换,一轮下来选择出一个最小(或最大)的放到 ...
- HDU 3466 Proud Merchants 排序 背包
题意:物品有三个属性,价格p,解锁钱数下线q(手中余额>=q才有机会购买该商品),价值v.钱数为m,问购买到物品价值和最大. 思路:首先是个01背包问题,但购买物品受限所以应先排序.考虑相邻两个 ...
- 【bzoj2423】最长公共子序列[HAOI2010](dp)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2423 题目大意:求两个字符串的最长公共子序列长度和最长公共子序列个数. 这道题的话,对于 ...
- Hibernate异常_01
1. 在使用 Hibernate(ojdbc14.jar[1536554字节,Win7显示大小为1501KB]) 操作 Oracle10g(32位)的时候,出现如下 error: INFO: HHH0 ...
- Java-集合类源码List篇(二)
前言 上篇中,我们分析了ArrayList的常用方法及其实现机制.ArrayList是基于内存空间连续的数组来实现的,List中其实还提供了一种基于链表结构的LinkedList来实现集合.同时多线程 ...
- Linux01
Linux的特点 1.免费的/开源 2.支持多线程./多用户的(这是操作系统性能的重要指标) 3.安全性好 4.对内存和文件管理优越. 1999年,IBM宣布与Redhat公司建立伙伴关系. Linu ...
- 《Advanced Bash-scripting Guide》学习(十六):一个显示输入类型的脚本
本文所选的例子来自于<Advanced Bash-scripting Gudie>一书,译者 杨春敏 黄毅 function show_input_type() { [ -p /dev/f ...
- c、rust、golang、swift性能比较
mac 计算速度视觉判断是(由好到差):c > rust > swift > golang 内存开销在mac上是(由好到差):c > rust > golang > ...
- Django 基础 模板系统
Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {% %} 'b', 'c', 'd']的话,就显示4. filesizeformat 将值格式化为一个 “人类可读的” 文件尺寸 ( ...