CentOS 7安装jenkins,部署项目完整攻略

要安装jenkins,需要下载jenkins的rpm包,虽然可以使用docker安装,但这里不推荐。

jenkins rpm包的下载地址为http://pkg.jenkins-ci.org/redhat/

建议下载最新版jenkins-2.190-1.1.noarch.rpm

在安装之前需要先安装jdk 8,maven

jdk地址https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

maven地址http://maven.apache.org/download.cgi

下载解压jdk和maven之后,编辑/etc/profile文件(你的安装路径根据你自己的喜好决定)

export JAVA_HOME=/home/java/jdk1.8.0_221
export MAVEN_HOME=/home/maven/apache-maven-3.6.1
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

保存后执行source /etc/profile

安装git

yum install git

然后是安装jenkins

rpm -ivh jenkins-2.190-1.1.noarch.rpm

安装启动之前请做如下修改

Jenkins修改端口号

jenkins持续化集成中注意的3个小问题

service jenkins start启动服务。

打开浏览器访问你服务器的ip和端口之后,经过一路next进入这个画面

b5de7bc75e6cb375822a65ac69c2fa437c7.jpg

点Manage Jenkins后,进入该画面

521ceb47aca6a1a31de1910e09582e01971.jpg

我们需要先安装插件,在可选插件中搜搜maven,安装如图插件是必须的,点直接安装即可。

18bb02d956ca0e1392bdd40db1665dc182c.jpg

再重新搜索SSH,此处大写,再安装Publish Over SSH,是为了给远程其他服务器安装设置ssh登录的

d3e239c7c0e59b7d0b2149385c6807a11a4.jpg

要进行远程部署,需要先将你的服务器之间设置ssh免密码登录,具体可以参考如何在多台服务器添加ssh的免密码登录

安装完以上插件,在进行一次部署之前,需要先设置一些常用工具的配置

65ef1a2c2f5943da7f01dc8921856d2ae20.jpg

点进去之后,可以设置需要用到的jdk,maven,git

8e1caaef32638f1925c87a6a69b31ed9a9f.jpg

 

c26ea08409d1523df986043190cf2f09779.jpg

5ff97c4d91671aa1f585521ea8a4e694b28.jpg

设置完成之后点保存

我们可以开始尝试第一次构建

5e10c9273cc96b554be4cb798668b7d963f.jpg

11890c1c5a85227882fc2603499e1327cde.jpg

输入构建名称,选“构建一个maven项目”

进入构建页面后,可以先填一个描述名称

ee199fd81d9ad3ca06ba5204db7dba741b7.jpg

 

c99ba1a28f46217d6929a16fd4ed53fd4d8.jpg

源码管理选择Git,填入你的git地址,用户名,密码以及分支(默认为master,我这里为huaweiyun分支)

cbbd7ced9183ffc7b35be69e0e99663f54e.jpg

此处为maven设置,我们在此构建的命令为clean package -Dmaven.test.skip=true,意思为清理,打包,跳过测试

保存后,就可以开始我们的第一次构建

6b6a8ea14d3fa7bac86764d49ef98409b46.jpg

构建会出现构建日志

7a8725f706efbe19188723aa14763416d09.jpg

类似于本地打包一样,构建一次就会去gitlab拉取代码,然后使用maven进行编译,打包成jar包。

虽然构建成功了,但我能需要对构建后的jar包进行部署,我们先采用shell命令的方式对jenkins安装的服务器进行一次部署

de416db5b5c894b3618b4ae78e5801b3811.jpg

点配置,进入之前的配置界面

d2af6ebde0f0f7043ee9e763266e72ca896.jpg

选择Run only if build succeeds,Add post-build step选择“执行shell”.

填入shell语句如下

42baa518b7784c7e2e013b937f7c010dc66.jpg

cp /var/lib/jenkins/workspace/车福管家/register-center/target/register-center.jar /home/soft/regist/
docker stop register
docker rm register
docker rmi repo/register
cd /home/soft/regist
docker build -t repo/register ./
docker run -d --name register --net=host repo/register

重新构建后,将会开始部署,结果如下

5fc9fdf7dee0ec8e06a8adfbad9ca56e12d.jpg

/home/soft/regist目录结构如下

f62cb2390d734c3965e5db0a05e668b50cc.jpg

具体Dockerfile可以参考如何创建一份springboot的docker镜像

如果我们需要把jar包发送到其他服务器进行部署,这就需要进行远程ssh管理

要进行远程发布,就必须配置我们之前安装到Publish Over SSH

bdaf4093b7bc1309f060cf6704962b5962d.jpg

点击配置系统,进入如下到界面(拉到最底端)

b2ed6d5596410b10f085a006c2676a5d207.jpg

填入你其他服务器的ip,用户名,你要把jar包拷贝到文件夹

点高级

6ad4c86def72d463b8fccb171a4217ca33d.jpg

填入你远程主机的密码

保存后重新创建一个构建项目

75158464d1cf2e996b1ae39dafd32d83d13.jpg

在最后一步选择如图所示的选项

c8036c5376bdf16ab8740ab5a7dab521dd7.jpg

SSH Server是我们刚才设置进去的

Source files是maven生成jar包的目录,我这里为: /var/lib/jenkins/workspace/车福管家配件中心/serviceprovider-center/target/serviceprovider-center.jar

Remote directory为你要将文件复制到该服务器的文件夹

Exec command为该服务器要执行的shell命令,其实跟本地服务器大同小异。

scp root@192.168.1.239:/var/lib/jenkins/workspace/车福管家配件中心/serviceprovider-center/target/serviceprovider-center.jar /home/soft/service/
docker stop service
docker rm service
docker rmi repo/service
cd /home/soft/service
docker build -t repo/service ./
docker run -d --name service --net=host repo/service

59aa508cf1131a870da12b06bbfd5c8d412.jpg

最后进行构建,结果如图所示。

另外需要注意的是多次构建会在/var/lib/jenkins/jobs产生大量的记录,会大量占用磁盘空间,需要定期清理

cd /var/lib/jenkins/jobs

rm -rf *

如果在磁盘产生堆积时可以用

du -h --max-depth=1 |sort 命令来进行逐层查找。

转载于:https://my.oschina.net/u/3768341/blog/3096296

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值