写在前面:公司项目初期,环境一切从始。因此,项目的发布环境需要自己搭建。就动手搭建了jenkins,在此把个人的搭建过程以及搭建中碰到的问题一起总结一下。

1. 准备环境。

  首先,需要jdk是必须要安装好的。本人使用的linux是centos,直接使用yum安装。

  先找到合适的版本:

yum search java | grep jdk

  然后运行安装:

yum install 合适版本全称

  安装maven(看个人使用的项目构建工具自行选择)

yum install maven

  安装git(看个人项目管理工具自行选择)

yum install git

2. 安装jenkins

  前期准备工作结束后,就可以安装jenkins了。安装jenkins其实非常简单。首先下载jenkins的安装包。传送门:https://jenkins.io/download/ 。 按照自己的系统选择下载。

  centos的下载后,是一个war包。选择合适路径存放并启动即可。本人放到 ~/jenkins/下。然后启动:

java -jar jenkins.war --httpPort=8096

   其中参数httpPort是用来指定jenkins的访问端口。启动后,输入http://localhost:8096,然后按照指导安装即可。其中,插件的选择,建议按照自选,选择自己需要的插件安装。然后就等待插件安装,安装可能因为网络等原因,个别插件安装失败,不要着急,直接选择重试即可,就会将失败的重新安装。如果不行,try one more time! 至此,jenkins就安装成功了。

3. 关于插件

  个人用到几个麻烦点的插件,在此说明一下。

3.1 Publish over SSH

  如果你部署的项目跟jenkins不在同一台机器上,那么你会用到这个插件的。该插件就是通过ssh将打包好的文件发布到远程服务器上,并执行命令。该插件的详解以及使用方法官方文档比较详细,传送门:https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plugin 。

  在这里说一下个人碰到的问题。图文并茂形式:

3.2 Role-based Authorization Strategy

  如果团队使用jenkins,那你肯定需要做权限管理的。不同项目组的人员只能编辑、构建不同项目组的项目。这个插件就是这个功能。

  首先,安装该插件。然后想要使用,需要先在全局安全配置中选择安全策略:

  按如下图选择:

  选择完之后,系统管理下,就会多出如下图的选项:

  进入后,如下释义:

  其中内部配置不再多少,只说一点,角色管理:

  project roles是要配置的项目角色,角色新增时,可以按照正则表达式模糊匹配项目。如图,个人比较喜欢该种匹配模式:.*(?i)xxx.* 。释义: .* 为任意个字符,(?i)为后边的字符忽略大小写。这样就可以按项目名特点,分组配置角色。具体配置可看官方文档:https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Plugin

4. 其他

  1. jenkins执行完后,会杀死该build id启动的进程。因此,如果不想启动脚本被干掉,可以再shell中将build id给改掉,这样jenkins就找不到了,嘿嘿。。。

BUILD_ID=DONTKILLME

  2. jenkins启动后,有一些jenkins的环境变量可以使用。比较常用的有${WORKSPACE}、${JOB_NAME}等。具体list可参考:

后记:至此,jenkins的安装以及使用注意点基本说完了,当然,注意事项只是个人使用中的注意点。如果有其他的具体傻瓜式安装步骤等,可自行google,教程还是很多很清楚的。

先写这些,如有问题可邮件沟通:fusang129@126.com。

linux环境下搭建jenkins实现自动部署的更多相关文章

  1. linux环境下搭建Jenkins持续集成(Jenkins+git+shell+maven+tomact)

    准备环境 jenkins.war包 ,jdk1.8  ,tomact , maven,git 1.Jenkins  war包,下载地址https://jenkins.io/zh/download/  ...

  2. 在Linux 环境下搭建 JDK 和 Tomcat

      在Linux 环境下搭建 JDK 和 Tomcat 参考地址:http://www.cnblogs.com/liulinghua90/p/4661424.html   [JDK安装] 1.首先下载 ...

  3. ​Linux环境下搭建禅道管理工具-包含软件资源

    ​Linux环境下搭建禅道管理工具 1:百度云盘下载: 禅道--链接: https://pan.baidu.com/s/1Stu7nOZVIPO5TnpJWjWtiQ 提取码:dnik CentOs操 ...

  4. Windows和Linux环境下搭建SVN服务器

    --------------------------Windows下搭建SVN服务器----------------------------- 一.安装SVN服务端 软件包Setup-Subversi ...

  5. Linux环境下搭建Tomcat+mysql+jdk

    Linux环境 1.下载并安装一个VMware workstation, 这个是虚拟机的平台(自行度娘下载~),虚拟机是在后面要在里面搭建Linux系统. 2.下载一个centos安装包,linux版 ...

  6. linux环境下搭建环境发布web项目

    在公司真是学习了一下项目环境在linux下搭建和发布的过程,这是每个程序员都应该掌握的一个技能,将整理下为以后温习用,也乐于和为掌握这些技能的猿分享: 这里主要分为5部分:1.安装jdk,并配置环境变 ...

  7. 在Linux环境下搭建Tomcat+mysql+jdk环境

    按照下面的步骤一步一步来搭建tomcat+jdk+mysql环境.   [Linux环境]------我搭建的是64位centos版本的linux系统 1.下载并安装一个VMware workstat ...

  8. linux环境下搭建MySQL

    linux下搭建mysql的方式很多,网上也详解了很多种搭建方式,有直接yum的.有rpm的..总之,“坑”是层出不穷,有相关文件依赖性.权限.GPG keys等等. 本人也在今天搭建了一下.是出“坑 ...

  9. Linux环境下搭建禅道

    如何在Linux下搭建禅道 查看Linux版本信息 # cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) 禅道官网下载Linux ...

随机推荐

  1. Linux的Cache Memory(缓存内存)机制

    转:https://blog.csdn.net/kaikai_sk/article/details/79177036 PS:为什么Linux系统没运行多少程序,显示的可用内存这么少?其实Linux与W ...

  2. 后向传播算法“backpropragation”详解

    为什么要使用backpropagation? 梯度下降不用多说,如果不清楚的可以参考梯度下降算法. 神经网络的参数集合theta,包括超级多组weight和bais. 要使用梯度下降,就需要计算每一个 ...

  3. Maximum Subsequence Sum【最大连续子序列+树状数组解决】

    Problem Description 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i < ...

  4. Windows 端口和所提供的服务

    一 .端口大全 端口:0 服务:Reserved 说明:通常用于分析操作系统.这一方法能够工作是因为在一些系统中“0”是无效端口,当你试图使用通常的闭合端口连接它时将产生不同的结果.一种典型的扫描,使 ...

  5. awk之腾迅面试题1

    1.题目如下: 3 5 6 72 3 1 04 5 6 92 3 4 42 2 1 04 5 0 9假如把2列和3列的值作为新的第5列,第5列的平均值为avg5,求第5列中大于avg5的行数.  aw ...

  6. lockingModel in log4net 日志文件不能被其他进程写入

    http://logging.apache.org/log4net/release/faq.html#single-file How do I get multiple process to log ...

  7. awk实现替换字符串中指定位置之间的内容

    # 显示第xx行的第yy列的一个字符sed -n 'xx,xxp' file | awk '{print substr($0,yy,1);}' # 修改第xx行的第yy列的一个字符Chr,并保存为新文 ...

  8. 查找文件【TLCL】

    locate locate 执行快速的路径名数据库搜索,输出每个与指定子字符串相匹配的路径名. locate bin/zip locate 命令的数据库是updatedb命令创建的. find loc ...

  9. linux基础(6)-shell编程

    shell脚本 shell脚本程序:以文件形式存放批量的linux命令集合,该文件能够被shell释放执行.通常由一段linux命令.shell命令.控制语句以及注释语句构成. shell脚本特点: ...

  10. $.ajax应用之请求头headers

    昨天项目中,由于要请求token验证,后台给出的方案是采用请求头返回token数据,给出的API文档是这样的 由于之前一直都是采用请求体发送请求,服务器在应答体李返回数据.和这个不一样: 采用jq的$ ...