Linux下Jenkins服务器搭建
系统环境
- 操作系统:CentOS6.9
- java jdk:java 8
- Jenkins版本:jenkins-2.78-1.1.noarch.rpm
- 关闭防火墙
注意:如果是基于msbuild构建.net项目,最佳实践是在windows server上搭建Jenkins服务,原因是msbuild是集成在.net framework框架中!!!
windows server 2008r2 sp1:IIS-->IE11-->vs 2013(with update5)-->java jdk8-->jenkins
安装步骤
1,检查是否已经安装java jdk
运行以下命令:[root@linuxcast ~]# rpm -qa | grep java
如果已经安装了并且不是java 8版本,运行以下命令批量卸载所有带java的文件,然后进行重装。
[root@linuxcast ~]# rpm -qa | grep java | xargs rpm -e --nodeps
2,安装java 8
先在本地下载好java 8的最新rpm包,然后上传到Linux服务器上,运行以下命令安装:
[root@gitlabserver softwares]# rpm -ivh jre-8u144-linux-x64.rpm
安装完成后,运行以下命令验证是否安装成功。
[root@linuxcast ~]# java -version

3,安装Jenkins
先在本地下载好Jenkins的最新rpm包,然后上传到Linux服务器上,运行以下命令安装:
[root@gitlabserver softwares]# rpm -ivh jenkins-2.78-1.1.noarch.rpm

4,配置环境变量
修改/etc/profile文件,在最后追加以下内容:
#set java enviroment
export JAVA_HOME=/usr/java/jre1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
然后执行以下命令使配置立即生效。
[root@gitlabserver lib]# source /etc/profile
5,启动Jenkins
运行以下命令立即启动jenkins。
[root@gitlabserver lib]# service jenkins start
把jenkins加到开机自动启动里,运行以下命令。
[root@gitlabserver lib]# chkconfig jenkins on
管理员帐号:admin\P@ssw0rd.123
6,安装插件
基于,.net framework4.5.1+vs 2015的开发环境,需要安装以下插件。
MSBuild Plugin
Team Foundation Server Plugin
Nuget Plugin
GitLab Plugin
FTP publisher Plugin
Role-based Authorization Strategy
...
注意事项
1,jenkins启动后通过web无法访问
查看jenkins status,显示如下信息:jenkins dead but pid file exists
原因是jenkins默认使用8080端口,但是本机上的8080端口已被使用,所以需要修改jenkins的端口号,运行如下命令:
[root@gitlabserver java]# vim /etc/sysconfig/jenkins
修改如下项的值
再次启动就可以了!
2,error MSB1008: Only one project can be specified
解决办法:重新安装jenkins,jenkins的安装路径中不能带有空格,可以直接安装在c盘根目录下。
3,error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications\Microsoft.WebApplication.targets" was not found
解决办法:
一种方法是在jenkins服务器上安装vs2013。
另一种方法是将开发机器上的目录copy到jenkins服务器上。
4,C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(2015,5): error MSB3091: 任务失败,因为未找到“AxImp.exe”,或未安装正确的 Microsoft Windows SDK。任务正在注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx40Tools-x86 的 InstallationFolder 值中所指定位置下的“bin”子目录中查找“AxImp.exe”。通过执行下列操作之一可以解决此问题: 1) 安装 Microsoft Windows SDK。2) 安装 Visual Studio 2010。3) 手动向正确的位置设置上面的注册表项。4) 将正确的位置传入任务的“ToolPath”参数中。 [C:\Jenkins\workspace\master.ubtrip.dev\SSharing.Ubtrip.UI\SSharing.Ubtrip.UI.csproj]
5,一定要在站点上启用Web Deploy发布功能
6,注意/p:DeployIisAppPath参数

参考资料
- 官网:https://jenkins.io/index.html,https://pkg.jenkins.io/redhat/
- CentOS 6.7 安装Jenkins记录:https://www.biaodianfu.com/centos-6-install-jenkins.html
Linux下Jenkins服务器搭建的更多相关文章
- linux下的服务器搭建集成环境
linux下的服务器搭建集成环境 ——写给初学者的我们 1.准备工具 1.1 SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录 ...
- Linux下dns服务器搭建
Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...
- Linux下SVN服务器搭建配置
Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...
- 《Linux下FTP服务器搭建及FTP使用》
.LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...
- Linux下DNS服务器搭建详解
Linux下DNS服务器搭建详解 DNS 即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析 ...
- linux下FTP服务器搭建教程1
你买了个主机就像是买了块地皮,搭建FTP就像是盖房子,我在地皮上建房子,然后创建的用户就像是钥匙,我给谁钥匙(权限),谁就可以到我家去玩,去放东西,拿东西. 虽然我们买不起现实的房子,但是我们可以买互 ...
- Linux 下 SVN服务器搭建
使用Linux(CentOS)搭建SVN服务器全攻略 虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一 ...
- Linux下svn服务器搭建
初次在linux上搭建svn服务器,本来以为很繁琐,其实很简单,主要分为以下几个步骤: 1. 首先安装subversion,命令:yum install subversion 2. 创建svn仓库 ...
- Linux 下 Samba 服务器搭建
初学,分享 环境和条件--- 虚拟机:VMware虚拟机 系统:Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:0 ...
随机推荐
- Edge Intelligence: On-Demand Deep Learning Model Co-Inference with Device-Edge Synergy
边缘智能:按需深度学习模型和设备边缘协同的共同推理 本文为SIGCOMM 2018 Workshop (Mobile Edge Communications, MECOMM)论文. 笔者翻译了该论文. ...
- js中的观察者模式
什么事观察者模式: 这是一种创建松散耦合代码的技术.它定义对象间 一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知.由主体和观察者组成,主体负责发布事件,同时观察者通过 ...
- 【RL-TCPnet网络教程】第36章 RL-TCPnet之FTP服务器
第36章 RL-TCPnet之FTP服务器 本章节为大家讲解RL-TCPnet的FTP服务器应用,学习本章节前,务必要优先学习第35章的FTP基础知识.有了这些基础知识之后,再搞本章节会有事 ...
- Batch入门教程丨第一章:部署与Hello World!(上)
Batch入门教程 在本教程中,您将了解并学习与Windows Batch有关的知识和编程方法,用以解决在日常生活中所遇到的简单问题,或者利用Windows Batch建立一个最初级的编程思维方式. ...
- Javascript高级编程学习笔记(86)—— Canvas(3)绘制矩形
绘制矩形 矩形是唯一一种可以直接在2D上下文中绘制的形状. 与矩形有关的方法包括: fillRect() strokeRect() clearRect() 上述方法都接收四个参数: 绘制矩形的 X 坐 ...
- [Swift]LeetCode34. 在排序数组中查找元素的第一个和最后一个位置 | Find First and Last Position of Element in Sorted Array
Given an array of integers nums sorted in ascending order, find the starting and ending position of ...
- [Swift]LeetCode537. 复数乘法 | Complex Number Multiplication
Given two strings representing two complex numbers. You need to return a string representing their m ...
- [Swift]LeetCode730. 统计不同回文子字符串 | Count Different Palindromic Subsequences
Given a string S, find the number of different non-empty palindromic subsequences in S, and return t ...
- 破解第一课:NOP绕过登录界面
第一步 打开软件,任意输入密码,提示“用户密码错误还有2次机会” 第二步 OD载入软件,右键-----中文搜索引擎---智能搜索 按下CTRL+F,打开查找,输入“密码错误”,在结果中双击找到的结果 ...
- 第三周 IP通信基础回顾
本周的知识归纳如下:Hubs工作在物理层,物理层所有的设备都处于同一个冲突域,所有的设备都处于同一个广播域,设备共享相同的带宽. MAC地址48位, MAC帧结构 #字符 8 ...