jenkins的安装与配置(超详细)

9 篇文章 0 订阅
3 篇文章 0 订阅
  • Jenkins官网:https://jenkins.io/ 或 https://www.jenkins.io/zh/download/
  • Jenkins官网文档:https://www.jenkins.io/zh/doc/
  • jenkins安装包:http://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/
  • 清华镜像:http://updates.jenkins-ci.org/download/war/

准备工作:以下四个请自行百度

需要Java环境
需要maven
需要git
如果有前端,则需要node.js

一:jenkins安装

1.官网下载Jenkins war包

![在这里插入图片描述](https://img-blog.csdnimg.cn/9201b260386649ba854af09d079cd6ac.png)

在这里插入图片描述
我们选择2.346.1
在这里插入图片描述

2.使用命令启动

nohup java -jar jenkins.war --httpPort=8087 &

可以用如下限制Jenkins占用内存

-server -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m

3.浏览器打开http://你的服务器ip:8087/

注意: 配置安全组或者防火墙的记得放开端口8087,不然搜不到

在这里插入图片描述

4. 找到初始化密码

输出的日志中或者
 ls /root/.jenkins/secrets/initialAdminPassword

都可查看密码
在这里插入图片描述
填入后下一步

5.启动如下

①:选择安装推荐的插件或者选择插件来安装
除非你非常明确的知道自己需要哪几种插件,不然就安装推荐的插件
在这里插入图片描述

在这里插入图片描述
可以看到,有部分插件我们用不到,安装完成之后可以通过系统管理-插件管理-来卸载掉
jenkins插件目录:/root/.jenkins

或者选择插件安装
在这里插入图片描述

输入用户名密码邮箱
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
点击开始使用jenkins 就可以使用jenkins了
在这里插入图片描述

二:插件

①:Git Parameter git参数
②:Localization: Chinese (Simplified) 简体中文包
③:SSH server ssh服务器
④:Build With Parameters 输入框式的参数(可选)
⑤:Persistent Parameter 下拉框式的参数(可选)
⑥:SSH ssh配置
⑦:Publish Over SSH 通过SSH发送构建好的jar包或者war包之类的东西
⑧:Role-based Authorization Strategy(可选用户权限)

①④⑤在购机按的项目General里面:
在这里插入图片描述
③⑥⑦在系统管理-系统配置里面
在这里插入图片描述

在这里插入图片描述
⑦:配置好以后也在构建好的项目-构建后操作里面配置内容
在这里插入图片描述

三:配置

①:配置国内的清华镜像源 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

入口:系统管理-插件管理-高级
的撒

②:配置maven

入口:系统管理-全局工具配置-maven配置/以及最下面的maven安装
在这里插入图片描述
在这里插入图片描述
②:maven的历史版本下载(可不看)

官网:https://maven.apache.org/

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

③:配置jdk

参照我之前写的搭建好jdk:https://blog.csdn.net/kawayiyy123/article/details/106475433
然后配置jdk
在这里插入图片描述

④:配置git

yum -y install git
which git

显示路径为/usr/bin/git

在这里插入图片描述

⑤:配置node.js

官方网址:https://nodejs.org/en/download/
可参照另外的博客进行安装,这边只是给出大概的 一些镜像和配置并没有配置,是不完全版本

[root@VM-4-12-centos local]# tar -xf node-v16.10.0-linux-x64.tar.xz
[root@VM-4-12-centos local]# mv node-v16.10.0-linux-x64 /usr/local/nodejs
[root@VM-4-12-centos local]# vi /etc/profile
#node
export NODE_HOME=/usr/local/nodejs
export PATH=$NODE_HOME/bin:$PATH
export NODE_PATH=$NODE_HOME/lib/node_modules
 
 
[root@VM-4-12-centos local]# source /etc/profile
[root@VM-4-12-centos local]# node -v
v16.10.0
[root@VM-4-12-centos local]# npm -v
7.24.0

⑥:配置凭据参数

入口:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⑦:配置Publish over SSH(可以略过)

在这里插入图片描述
进入/root/.ssh目录,看看里面 有没有公钥和私钥
如没有

## 创建ssh key 
ssh-keygen -t rsa
## 一路回车

查看/root/.ssh/文件夹目录

cd /root/.ssh/

查看ssh key 私钥

cat /root/.ssh/id_rsa

在这里插入图片描述
id_rsa 私钥
id_rsa_pub 公钥
注意:这里是私钥

⑧:配置SSH Server

在这里插入图片描述
在这里插入图片描述

⑨:配置SSH remote hosts(可以略过,具体配置的时候可以增加)

ssh的远程主机配置(就是你要发送到哪一台)
在这里插入图片描述

四:项目构建

1. 后端

新建一个项目
在这里插入图片描述

①:General

在这里插入图片描述
在这里插入图片描述

②:源码管理

在这里插入图片描述

③:构建触发器 不做任何配置 略过

④:构建环境 不做任何配置 略过

⑤:构建

在这里插入图片描述
在这里插入图片描述

⑥:构建后操作

在这里插入图片描述
服务器的路径跟配置的路径不一致,注意
在这里插入图片描述

五:遇到的一些小问题

①:服务器接收不到jenkins发送来的jar包

在这里插入图片描述
不是全路径,是当前项目下的路径
看上述第六步:构建后操作,第一个和第二个路径有误,是相对路径,jenkins默认在本项目下去操作

②:服务器存储jar包路径跟自己配置的不一致

在这里插入图片描述
已经构建成功,但是自己目录下没有,原因
在这里插入图片描述
假如你项目构建配置的是/usr/local/workspace;那么你的jar包被传输到 /usr/local/jenkins/usr/local/workspace里面去了

③:更改jenkins主目录路径

Jenkins储存所有的数据文件在这个目录下. 你可以通过以下几种方式更改:(我采用第一种)

  1. 使用你Web容器的管理工具设置JENKINS_HOME环境参数.
    打开tomcat的bin目录,编辑catalina.sh文件。
    在# OS specific support. $var must be set to either true or false.上面添加:export JENKINS_HOME=“/var/lib/jenkins”
    在引号中填入你的路径。

  2. 在启动Web容器之前设置JENKINS_HOME环境变量.
    用root用户登录
    编辑profile文件:vi /etc/profile
    在最后加入:export JENKINS_HOME=xxxx
    保存,退出后执行:source /etc/profile
    让配置生效

  3. (不推荐)更改Jenkins.war(或者在展开的Web容器)内的web.xml配置文件.
    更改Jenkins.war(或者在展开的Web容器)内的web.xml配置文件)

     <env-entry>
     	<env-entry-name>HUDSON_HOME</env-entry-name>
     	<env-entry-type>java.lang.String</env-entry-type>
     	<env-entry-value></env-entry-value>
     </env-entry>
    

④:ssh server 和 git连接不上

(1):ssh server连接不上,端口使用不是22
解决思路:换成内网ip,然后端口改成22后成功
(2):git连接不上(一个内网下看本篇,不是的请检查自己的凭据配置(对应gitlab/git/gitbit用户名密码之类的对不对))
其他的服务器都能连接上,唯独本台连接不上,原因:在同一个内网下不能用公网ip
报错如下:

Failed to connect to repository : Command "/usr/local/git.2.37.0/bin/git ls-remote -h -- 你的ip.git HEAD" returned status code 128:
stdout:
stderr: fatal: 无法访问 'http://外网ip:端口/r/项目.git/':Failed connect to 外网ip:端口; 拒绝连接

在这里插入图片描述
解决方式:换成内网ip,使用ifconfig查看即可
在这里插入图片描述

⑤:jenkins执行.sh脚本不生效

按照这个格式来写
在这里插入图片描述

https://blog.csdn.net/sinat_29821865/article/details/119906879

六: jenkins的主目录结构

https://blog.csdn.net/qq_46373211/article/details/126718306

七:jenkins的一些插件

①:Multiple SCMs

此插件可以在项目构建时选多个git,并指定分支
在这里插入图片描述
下载完以后构建选择
在这里插入图片描述
在这里插入图片描述
选择本地子目录
在这里插入图片描述
签出到子目录
在这里插入图片描述

在这里插入图片描述
写上对应的名称,上述配置跟源码配置的Git配置差不多,唯一差距的是Additional Behaviours

②:用户权限分配 Role-based Authorization Strategy

下载插件后使用对应的插件
在这里插入图片描述
退出当前目录,找到如下打开
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
创建全局角色和项目角色,全局角色必须创建,权限要分配好,不要全给;项目权限看情况给
简单说一下item role的语法:

  • 将 pattern 设置为 “Ruoyi-.*”,则该角色将匹配名称以 “Ruoyi-” 开头的所有任务;
  • 将 pattern 设置为 “.*Ruoyi”,则该角色将匹配名称以 “Ruoyi” 结尾的所有任务;
  • 也可以匹配文件夹,可以使用以下表达式匹配文件夹 “^foo/bar.*”;
    一个项目角色多个项目可以使用 |来区分
    比如我有一个 ruoyi系列项目,一个modbus4j系列项目
    分配: ruoyi.*|modbus4j.* .*是通配
    分配好以后在对应的item roles里面点击,出现如下项目则成功
    在这里插入图片描述
    在这里插入图片描述
    分配好之后我们可以用新建的root用户登录,就会显示出分配项目角色里面对应的项目
拓展:新建用户(熟知的可以略过)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输入对应信息后新建成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值