系统环境

  1. 操作系统:CentOS6.9
  2. java jdk:java 8
  3. Jenkins版本:jenkins-2.78-1.1.noarch.rpm
  4. 关闭防火墙

注意:如果是基于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参数


参考资料

  1. 官网:https://jenkins.io/index.htmlhttps://pkg.jenkins.io/redhat/
  2. CentOS 6.7 安装Jenkins记录:https://www.biaodianfu.com/centos-6-install-jenkins.html

Linux下Jenkins服务器搭建的更多相关文章

  1. linux下的服务器搭建集成环境

    linux下的服务器搭建集成环境 ——写给初学者的我们 1.准备工具 1.1 SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录 ...

  2. Linux下dns服务器搭建

    Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...

  3. Linux下SVN服务器搭建配置

    Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...

  4. 《Linux下FTP服务器搭建及FTP使用》

    .LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...

  5. Linux下DNS服务器搭建详解

    Linux下DNS服务器搭建详解 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析 ...

  6. linux下FTP服务器搭建教程1

    你买了个主机就像是买了块地皮,搭建FTP就像是盖房子,我在地皮上建房子,然后创建的用户就像是钥匙,我给谁钥匙(权限),谁就可以到我家去玩,去放东西,拿东西. 虽然我们买不起现实的房子,但是我们可以买互 ...

  7. Linux 下 SVN服务器搭建

    使用Linux(CentOS)搭建SVN服务器全攻略 虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一 ...

  8. Linux下svn服务器搭建

    初次在linux上搭建svn服务器,本来以为很繁琐,其实很简单,主要分为以下几个步骤: 1.  首先安装subversion,命令:yum install subversion 2.  创建svn仓库 ...

  9. Linux 下 Samba 服务器搭建

    初学,分享 环境和条件--- 虚拟机:VMware虚拟机 系统:Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:0 ...

随机推荐

  1. Dora.Interception,为.NET Core度身打造的AOP框架 [4]:与依赖注入框架的无缝集成

    Dora.Interception最初的定位就是专门针对.NET Core的AOP框架,所以在整个迭代过程中我大部分是在做减法.对于.NET Core程序开发来说,依赖注入已经成为无处不在并且“深入骨 ...

  2. 一次 HTTP 请求响应过程的完整解析

    因特网无疑是人类有史以来最伟大的设计,它互联了全球数亿台计算机.通讯设备,即便位于地球两端的用户也可在顷刻间完成通讯. 可以说『协议』是支撑这么一个庞大而复杂的系统有条不紊运作的核心,而所谓『协议』就 ...

  3. [Swift]LeetCode326. 3的幂 | Power of Three

    Given an integer, write a function to determine if it is a power of three. Example 1: Input: 27 Outp ...

  4. [Swift]LeetCode525. 连续数组 | Contiguous Array

    Given a binary array, find the maximum length of a contiguous subarray with equal number of 0 and 1. ...

  5. [Swift]LeetCode356. 直线对称 $ Line Reflection

    Given n points on a 2D plane, find if there is such a line parallel to y-axis that reflect the given ...

  6. 8.Flask-Script

    Flask-script的作用是可以通过命令行的形式操作flask.安装方式:pip install flask-script 1.1.command装饰器 (1)创建manage.py from f ...

  7. Java集合类的那点通俗的认知

    文/沉默王二 开门见山地说吧,Java提供了一套完整的集合类(也可以叫做容器类)来管理一组长度可变的对象(也就是集合的元素),其中常见的类型包括List.Set.Queue和Map.从我个人的编程经验 ...

  8. 8分钟学会Consul集群搭建及微服务概念

    Consul介绍: Consul 是由 HashiCorp 公司推出的开源软件,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与 ...

  9. 正则表达式与H5表单

     RegExp 对象    exec 检查字符中是正则表达中的区域    text  检查内容  String 对象的方法    match    search    replace    splic ...

  10. C#版[击败98.85%的提交] - Leetcode717. 1比特与2比特字符 - 题解

    版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C#版 - L ...