Jenkins_Maven_Git 持续集成及自动化部署 GentOS版
1.安装JDK
JDK下载:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
新建安装目录:
mkdir /usr/local/java
解压安装:
tar -zxvf ./jdk-8u51-linux-x64.tar.gz -C /usr/local/java/
修改环境变量:
vim /etc/profile
添加:
#JAVA_HOME
export JAVA_HOME=/usr/local/java/jdk1.8.0_51/bin
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
保存退出
使profile文件生效:
source /etc/profile
将安装的jdk设置为默认版本:
update-alternatives --install /usr/bin/java java /usr/local/java/jdk1.8.0_51/bin/java 300
update-alternatives --install /usr/bin/javac javac /usr/local/java/jdk1.8.0_51/bin/javac 300
update-alternatives --install /usr/bin/jar jar /usr/local/java/jdk1.8.0_51/bin/jar 300
update-alternatives --config java
键入选择的编号:1

测试:出现如下信息则安装成功
java -version

2.安装tomcat
Tomcat下载:
http://tomcat.apache.org/download-80.cgi
新建tomcat安装目录
mkdir /usr/local/tomcat
解压安装
tar -zxvf ./apache-tomcat-8.0.24.tar.gz -C /usr/local/tomcat/
配置环境变量
vim /etc/profile
添加如下东西
#TOMCAT_HOME
export TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-8.0.24/
export PATH=${TOMCAT_HOME}/bin:$PATH
保存退出
使profile文件生效
source /etc/profile
测试:输入startup.sh 出现如下信息 安装成功
startup.sh

3.安装maven
下载地址:
http://maven.apache.org/download.cgi
安装:
tar -zxvf ./apache-maven-3.3.3-bin.tar.gz -C /usr/local/maven/
添加环境变量
vim /etc/profile
添加:
#MAVEN_HOME
export MAVEN_HOME=/usr/local/maven/apache-maven-3.3.3
export PATH=${MAVEN_HOME}/bin:$PATH
保存
使profile文件生效
source /etc/profile
测试:
mvn -v 出现如下信息表明maven配置成功

4.配置Tomcat与maven
新建maven本地库文件夹:
mkdir /usr/local/maven/apache-maven-3.3.3/maven-repo
进入mavenhome/conf目录:
对setting.xml配置可执行权限:
chmod 777 settings.xml
修改setting.xml文件:
vim settings.xml
添加如下内容
<localRepository>/usr/local/maven/apache-maven-3.3.3/maven-repo</localRepository>
<server></server>中添加如下内容
<server>
<id>tomcat</id>
<username>admin</username>
<password>admin</password>
</server>
保存 退出
进入tomcathome/conf目录
对tomcat-users.xml配置可执行权限:
chmod 777 tomcat-users.xml
编辑tomcat-users.xml:
vim tomcat-users.xml
添加如下内容:
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin"
roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>
保存,退出。
5.安装git
首先 更新系统:
sudo yum update
安装依赖的包
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
下载Git并解压
wget https://github.com/git/git/archive/v2.3.0.zip
unzip v2.3.0.zip
cd git-2.3.0
make prefix=/usr/local/git all
sudo make prefix=/usr/local/git install
whereis git
配置git环境变量:
vim /etc/profile
添加:
export PATH=/usr/local/git/bin:$PATH
保存
使profile文件生效:
source /etc/profile
查看git版本:
git --version
出现如下内容表明安装成功

配置git:
git config --global user.name "zhangzhifei"
git config --global user.email "zhangzhifei@ganji.com"
查看配置信息:
cat ~/.gitconfig

创建版本库目录:
mkdir -p gitdemo
cd gitdemo
echo “README” > readme.txt
初始化版本库
git init

把当前目录下的所有文件全部添加到暂存区:
git add .
创建提交:
git commit -m "init"

查看git文件信息:

Git连接远程服务器:
cd ~/
mkdir .ssh
cd .ssh
ssh-keygen -t rsa -C "zhangzhifei@ganji.com"(填写自己邮箱地址)
出现以下提示表示,成功创建,期间会有提示按回车跟输入密码.建议一路回车按默认值即可。

添加ssh到github中:
vim id_rsa.pub

至此,git配置完成,下边测试:
cd ~
mkdir java
cd java
git clone ssh://git@192.168.2.215:9999/zhangzhifei/shopping.git 这是git项目地址

在此附上git常用命令以供使用:
git clone <address>:复制代码库到本地;
git add <file> ...:添加文件到代码库中;
git rm <file> ...:删除代码库的文件;
git commit -m <message>:提交更改,在修改了文件以后,使用这个命令提交修改。
git pull:从远程同步代码库到本地。
git push:推送代码到远程代码库。
git branch:查看当前分支。带*是当前分支。
git branch <branch-name>:新建一个分支。
git branch -d <branch-name>:删除一个分支。
git checkout <branch-name>:切换到指定分支。
git log:查看提交记录(即历史的 commit 记录)。
git status:当前修改的状态,是否修改了还没提交,或者那些文件未使用。
git reset <log>:恢复到历史版本。
6. 安装Jenkins:
下载:
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
安装:
yum install jenkins
配置jenkins端口:
vim /etc/sysconfig/jenkins
进入该文件,这个是jenkins的系统配置文件,
找到2处修改端口号:
JENKINS_PORT="8080"
JENKINS_AJP_PORT="8009"
默认是这样的,我们可以随意修改成自己需要的端口号,避免冲突(tomcat默认端口也是这样的)
这里作者修改成了:
JENKINS_PORT="8888"
JENKINS_AJP_PORT="8889"
接下来我们就可以尝试启动jenkins服务了:
sudo service jenkins start
若无法启动,操作如下:
我们可以看到jdk版本为1.7.0_25,复制该名称
vi /etc/init.d/jenkins
找到这段代码
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.6.0/bin/java
/usr/lib/jvm/jre-1.6.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/bin/java
我们会发现这里面没有叫1.7.0_25的文件目录
我们在这段代码后面加上
/usr/java/jdk1.7.0_25/bin/java
效果如下:
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.6.0/bin/java
/usr/lib/jvm/jre-1.6.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/bin/java
/usr/java/jdk1.7.0_25/bin/java
"
保存退出。重新执行启动命令。
若修改了默认端口,诸如8888,
防火墙开放8888端口
增加8888端口到防火墙配置中,执行以下操作:
[root@admin ~]# vi + /etc/sysconfig/iptables
#增加以下代码
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
重启防火墙
service iptables restart

一切OK.
7. Jenkins配置:
打开http://192.168.138.130:8888/

系统管理 -> 插件管理 -> 可更新插件
1. 更新全部可更新插件
2. 点击可选插件,选择并安装git plugin
系统管理 -> 系统设置
配置maven的setting.xml位置

配置JDK

配置GIT


邮件设置:

配置GIT:

邮件通知:

构建maven项目:



点击add 添加私钥:
复制id_rsa文件中的内容



保存 - 应用:
点击 立刻构建:

选择 console output

等待。。。。

部署成功。
Jenkins_Maven_Git 持续集成及自动化部署 GentOS版的更多相关文章
- .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统
.NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...
- NET持续集成与自动化部署
https://www.cnblogs.com/hunternet/p/9590287.html 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们 ...
- .NET 半天搭建Jenkins持续集成与自动化部署系统
前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由 ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(三):搭建jenkins集群环境
写在前面 大家可以看到本文的配图,左边是jenkins单机环境,右边是jenkins集群.个中区别,不言而喻,形象生动. 前面我分别介绍了.net core 程序的多种部署方式(无绝对孰优孰劣): 1 ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署
前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装
2019/1/31更新,经过我一段时间的使用 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用d ...
- .NET持续集成与自动化部署之路第二篇——使用NuGet.Server搭建公司内部的Nuget(包)管理器
使用NuGet.Server搭建公司内部的Nuget(包)管理器 前言 Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基 ...
- .NET持续集成与自动化部署之路第三篇——测试环境到生产环境的一键部署策略(Windows)
Jenkins测试环境到生产环境的一键部署策略(Windows) 一.前言 前面我们已经初步实现了开发集成环境.测试环境的持续集成(自动化构建.自动化测试.自动化部署).但生产环境自动化部署迟 ...
- Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记
前言 持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新 ...
随机推荐
- USR-BLE101配置
新买来的模块,默认为slave模式,波特率57600,8位数据位,无检验位,1位停止位. 发送+++a,进入命令模式. 1.设置模块名称 AT+NAME=BT_Shining 2.设置发射功率(最大功 ...
- apache与nginx的虚拟域名配置
由于开发需求,项目有时候需要设置虚拟域名进行测试.下面是分别是apache和nginx的配置 一.apache 环境:wampserver2.5 1.修改host文件 C:\Windows\Syste ...
- 处理某个json文件的代码
# encoding=utf-8 import json,re with open('E:\\weather53892_20114.json','r') as f: data= f.readlines ...
- mybatis输出SQL
1.导包 下载一个log4j-1.2.17.jar,放到WEB-INF的lib下,并加入build path 2.创建配置文件 在src下创建log4j.properties,填入以下内容: log4 ...
- Binary Tree Zigzag Level Order Traversal [LeetCode]
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to ...
- Discuz! X论坛上传附件到100%自动取消上传的原因及解决方案
最近接到一些站长的反馈,说论坛上传附件,到100%的时候自己取消上传了.经查是附件索引表pre_forum_attachment表的aid字段自增值出现了问题,导致程序逻辑返回的aid值实际为一个My ...
- 前端常用的几个js判断(一)
1. 禁止右键点击$(document).ready(function(){ $(document).bind("contextmenu",function(e){ return ...
- mysql取前几行数据limit用法
转自http://www.cnblogs.com/study100/archive/2013/07/30/3224250.html 在mysql中是没有top关键字的,在mysql中可以用limit来 ...
- C++中的字面值指定类型
C++中只有内置类型存在字面值,没有类(class)类型字面值.例如:0是int类型的字面值,3.14159是double类型的字面值. 字面值类型很多 整型浮点字面值 20 ...
- USACO Milking Cows
思路: 脑抽了,一看题目,这不就是线段树么,离散化区间合并..最终发现我并不会写...于是看了下题目范围10^6...模拟水之..每个区间左端点+1,右端点-1,从左到右扫一下就行了... 代码: / ...