通过詹金斯构建发布普通网站(jenkins + ngin

  

本次实验介绍:
nginx: web网站
svn:代码存储仓库
詹金斯:自动化运维工具

  

开发人员通过将代码提交到svn上,运维人员通过配置詹金斯自动发布到nginx目录上。

  

实验环境:
192.168.0.188詹金斯
192.168.0.189 nginx
192.168.0.19 svn
詹金斯,nginx, svn环境都已经准备完成,这里不进行再次搭建

  

步骤:
1.詹金斯安ssh插装件,并配置远程服务器
2。建立项目(工作)配置詹金斯
3。将代码上传svn
4。用詹金斯发布文件
5。查看测试结果

  

1。詹金斯安ssh插装件,并配置远程服务器
在詹金斯系统管理——插件管理
通过詹金斯构建发布普通网站(Jenkins + ngin”> <br/>选择插件发布/ssh插件并安装,已安装则忽略</p>
  <p>安装完成后开始配置系统管理,系统配置</p>
  <p>翻到最后面,找到SSH服务器选项然后新增<br/> <img src=

  

测试是可以连接保存即可

  

释义:
SSH服务器配置为发布/SSH中运程机的配置,分“基本设置”和“高级设置“两部分。”基本设置“主要是运程机IP, SSHusername, SSHport,连接超时时间等。“高级设置”和大部分“全局设置”中的选项相同。
名称:建立这台机器的名称
主机名:远程机器的地址,最好是IP地址
用户名:用户名
远程目录:远程目录
使用密码身份验证,或使用一个不同的关键:使用密码连接
高级设置
高级设置里能够设置SSHport,重试时间以及又一次设置“全局设置”中的选项

  

全局配置:
每一项都能够被SSH服务器的设置所覆盖,这种设计有一个优点。在服务器环境比較规范的情况下,能够省去每个SSH服务器分别配置的繁琐步骤。
參数说明
密码:SSH的密码
使用的用户名/密码登录时为用户名的密码。使用私钥登录时为私钥的密码。
关键路径:SSH私钥的文件路径
私钥文件的路径,能够是绝对路径。也能够是相对美元JENKINS_HOME的相对路径
关键:私钥
私钥导出后的文本内容

  

扩展例子:如果不使用密码而使用秘钥远程连接该怎么做呢1.詹金斯所在服务器生成公私钥对2。将公钥(idrsa.pub)传到要远程的机器上或者将公钥内容输入到远程机器authorizedkeys文件中(/根/sh/authorizedkeys) chmod 600/root/.ssh/authorizedkeys3。詹金斯设置私钥所在路径文件,在输入生成公私钥的密码即可(密码/密码字段需要输入公私钥密码)(道路关键字段输入詹金斯所在服务器的私钥文件所在路径)

  

假设“关键”和“关键路径”都设置,则“关键”的优先级较高,私钥的密码是“密码”中设置的内容。
禁用exec:禁止在目标机上运行命令
勾选后将会忽略在工作配置中“执行命令”选项中设置的命令.Jenkins的说明文档中的“禁用执行个人配置的高级设置将被忽略。“没有全然理解。从实际效果来看,仅仅要“禁用exec”被勾选后,无论SSH服务器中是否勾选“禁用执行“.Job中设置的命令都将补忽略。

  

2。建立工作任务
点击新建任务

  

输入名称,并选择自由风格项目然后确定

  

源码管理选择svn

  

其中
存储库URL:项目的svn地址
凭证:凭证
点击添加,添加相应用户名即可

  

选择构建后操作,选择通过SSH发送构建构件
通过詹金斯构建发布普通网站(jenkins + ngin
通过詹金斯构建发布普通网站(jenkins + ngin

  

參数说明:

名称”系统管理祝辞系统设置“设置的SSH Sverver的名字列表。

源文件拷贝到运程机上的文件。相对工作空间的路径,也支持表达式,如上图中的“* /。战争”。

删除前缀文件复制时要过滤的文件夹,如上图中目标的文件夹。
远程目录
文件得到到远程机上的文件夹,此文件夹是相对于“SSH服务器“中”的远程目录”的。假设不存在将会自己主动创建。
Exec命令
在这里能够填写在运程机器上运行的脚本,如:应用部署脚本

  

这里是直接将svn发布文件拷到nginx发布目录上,也可以将远程目录修改其他的,然后运行命令拷贝到nginx上也可,这种方法比较安全

通过詹金斯构建发布普通网站(jenkins + ngin