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 "[email protected]"

查看配置信息:

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 "[email protected]"(填写自己邮箱地址)

出现以下提示表示,成功创建,期间会有提示按回车跟输入密码.建议一路回车按默认值即可。

添加ssh到github中:

vim id_rsa.pub

至此,git配置完成,下边测试:

cd ~

mkdir java

cd java

git clone ssh://[email protected]: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端口到防火墙配置中,执行以下操作:

[[email protected] ~]# 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

等待。。。。

部署成功。

时间: 2024-10-01 07:01:03

Jenkins_Maven_Git 持续集成及自动化部署 GentOS版的相关文章

NET持续集成与自动化部署

https://www.cnblogs.com/hunternet/p/9590287.html 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由于当时对系统划分的不合理等等原因导致每次发版都会设计到多个系统的发布,小的版本三五个,大的版本十几个甚至几十个系统的同时发布!而我们也没有相应的基础设施的支撑,发版方式更是最传统的,开发人员将发布包发给运维人

.NET 半天搭建Jenkins持续集成与自动化部署系统

前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由于当时对系统划分的不合理等等原因导致每次发版都会设计到多个系统的发布,小的版本三五个,大的版本十几个甚至几十个系统的同时发布!而我们也没有相应的基础设施的支撑,发版方式更是最传统的,开发人员将发布包发给运维人员,由其讲各个发布包一个一个覆盖到生产环境.因此每次上线仅仅发版就需要2-3个小时.这种方式

持续集成之“自动化部署”

在前文<依赖管理>中,我们讨论了如何在代码变得庞大,组件增多的情况下,做好外部库和内部组件依赖管理,从而提高构建效率.可以应用的实践包括:一次生成,多次复用:建立统一制品库,外部依赖库可以使用像Maven或Ivy这样的工具进行统一管理:对架构进行调整,使一个大的代码库分成多个组件:每个组件有自己的持续集成体系:对多个组件做持续集成.然而,解决一个问题后,总会有另一个问题等在那里,需要你来解决.这次Joe的团队遇到了部署问题. 星期一早上,Alice一进办公室,就看到一脸倦意的Joe坐在椅子上,

Jenkins持续集成-自动化部署脚本的实现《python》

读者须知:1.本手记本着记续接前面的两张手记内容整理2.本手记针对tomcat部署测试环境实现 最近工作比较繁忙,导致这章一直拖延,没有太抽出时间来总结.要实现Jenkins端的持续集成,其实在CI服务配置端很容易,难点呢?就是如何实现自动化的部署.我的脚本设计就是为了解决以下难题: 难点一.如何使得自动化部署脚本更通用 我用的脚本,依赖依赖一个配置文件的模块化,让每一个应用业务模块更加通用.自动化所执行的命令呢?我也是设计想法本着更加通用平台的原则,至少对于tomcat+java or jav

Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记(1)

前言    持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正好有机会,费了一番功夫总算搞好了,特此记录. 1. 开发环境    我这边建立的标准开发环境如下:    1. Maven做项目管理:    2. Git做代码管理:    3. SpringMVC+Spring+Mybatis搭建的程序框架:    4. Mysql作为数据存储,Druid做

Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记

前言 持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正好有机会,费了一番功夫总算搞好了,特此记录. 1. 开发环境 我这边建立的标准开发环境如下: 1. Maven做项目管理: 2. Git做代码管理: 3. SpringMVC+Spring+Mybatis搭建的程序框架: 4. Mysql作为数据存储,Druid做连接池: 5. unitils作为测

Jenkins+Maven+Git搭建持续集成和自动化部署的配置

前言 持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正好有机会,费了一番功夫总算搞好了,特此记录. 1. 开发环境 我这边建立的标准开发环境如下: 1. Maven做项目管理: 2. Git做代码管理: 3. SpringMVC+Spring+Mybatis搭建的程序框架: 4. Mysql作为数据存储,Druid做连接池: 5. unitils作为测

持续集成与自动化部署 - dev ops &amp; 持续集成、交付、部署 介绍 (三)

1 什么是devops DevOps是一种文化,让开发.测试.运维之间沟通的文化. 过程.方法.系统的统称.目标:让软件从构建,开发,测试,上线,更加的快捷 安全的上线. 列如saltstack他就是一个devops的工具.自动话测试平台也是devops 2 持续集成.交付.部署介绍 2.1 继续集成 在软件开发的过程中,频繁的将代码集成到主干上,然后进行自动化测试. 2.2 持续部署 持续交付是指在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环境」(production-

持续集成与自动化部署 - jenkins &amp; sonar代码质量管理平台 部署和基础使用(五)

1 jenkins 安装参考链接 1.1 安装jenkins [[email protected] ~]# yum install -y java-1.8.0 [[email protected] ~]# cd /etc/yum.repos.d/ [[email protected] yum.repos.d]# wget http://pkg.jenkins.io/redhat/jenkins.repo [[email protected] yum.repos.d]# rpm --import