tnblog
首页
视频
资源
登录

Jenkins常规操作(JDK,换源,凭据,git码云)

7445人阅读 2021/4/21 17:08 总访问:3470847 评论:1 收藏:1 手机
分类: Jenkins

Jenkins常规操作(git,插件,凭据)

JDK集成

JAVA下载与安装


java的官网下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
由于登录的不便,这里我找到一个linux的链接

  1. 链接: https://pan.baidu.com/s/1Xd-zDEQDMc6Q0kwZ6o3PAA
  2. 提取码: bq6s

解压

  1. # 移动到/usr/local/java/
  2. mv jdk8u181.tar.gz /usr/local/java/
  3. cd /usr/local/java/
  4. tar -zxvf jdk8u181.tar.gz

配置/etc/profile文件

  1. $ vim /etc/profile
  2. # 在最底部加入以下内容后保存并退出
  3. # JDK
  4. export JAVA_HOME=/usr/local/java/jdk1.8.0_181
  5. export PATH=$JAVA_HOME/bin:$PATH
  6. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

使配置文件生效,并检查版本号

  1. $ source /etc/pro?le
  2. $ java -version
  3. java version "1.8.0_181"
  4. Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
  5. Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

Jenkins中配置JDK路径

Jenkins
Manage Jenkins
Global Tool Configuration
ADD JDK

插件下载改清华源

jenkins的所有插件安装后需要重启才能生效,由于Jenkins国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址(清华大学源):
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

Manage Jenkins
Manage Plugin
Advanced
Update Site


接着我们修改服务器配置,进入jenkins安装目录 ,找到/updates/default.json文件 (我这里是/var/jenkins_home/updates/default.json),将其中的 updates.jenkins-ci.org/download 替换为 mirrors.tuna.tsinghua.edu.cn/jenkins ,然后把www.google.com 修改为 www.baidu.com

进入到default.json所在目录

  1. cd /var/jenkins_home/updates

进行换源

  1. # 备份
  2. cp default.json old-default.json
  3. # 换源
  4. sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

替换后访问(前面的IP是Jenkins的地址)http://127.0.0.1:8050/restart重启jenkins

凭证配置

安装凭证配置


凭据就是用来存储需要密文保护的数据库密码、Gitlab密码信息、Docker私有仓库密码等,以便 Jenkins可以和这些第三方的应用进行交互。

0.如果发现有凭据就可以跳过第一步

1.凭证插件安装Credentials Binding

可以进行添加凭证

关于凭证类型总共有六种,这我这里有些插件没安装所以只有三种

凭证类型

凭证类型 描述
Username with password 用户名和密码
GitHub APP github的账户管理
SSH Username with private key 使用SSH用户和密钥
Secret ?le 需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径 设置到一个变量中,等构建结束后,所复制的Secret ?le就会被删除。
Secret text 需要保存的一个加密的文本串,如钉钉机器人或Github的api token
Certi?cate 通过上传证书文件的方式

集成Git示例


为了jenkins能够拉取代码,需要安装Git环境和jenkins对应的Git插件

1.在可构建的主机上安装Git环境

  1. # 安装
  2. yum install git -y
  3. # 查看版本
  4. git --version

2.jenkins安装Git插件

Gitee码云对接(密码凭证)

添加凭据

Manage Jenkins
Manage Credentials
Add Credential

先创建一个test项目

测试凭据是否能够使用,创建一个自由风格的job

Jenkins
New Item
Freestyle project

然后先到gitee上复制代码仓库地址,随后粘贴到git选项下的仓库链接下面

很抱歉,这里账号有点问题我直接在这里添加一下。接着我做了一个查看目录下文件信息、路径信息与查看.gitignore,然后点击保存。

完成保存后立即构建。

从日志信息中我们可以看到Jenkins的workspace目录是构建job的目录

关于码云的更多与Jenkins的操作我会单独再出一篇,谢谢大家!

Gitlab密钥凭证对接

SSH免密登录示意图

Jenkins服务器
存放私钥:id_rsa
Gitlab服务器
存放公钥:id_rsa.pub

我们先到Jenkins服务器下创建公钥与私钥文件,通过下列命令在生成是我们看到它将公私钥文件放到了/root/.ssh/目录下。

文件 描述
id_rsa 私钥文件
id_rsa.pub 公钥文件
  1. ssh-keygen -t rsa
  2. cd /root/.ssh

然后将生成的公钥(id_rsa.pub)放在Gitlab中

随之将私钥放入Jenkins中

最后我们来创建一个job并拉取我们gitlab的仓库

集成Azure DevOps示例

首先生成你的公钥与私钥
执行如下命令(如果存在就没有必要了)

  1. cd /root/.ssh
  2. ssh-keygen -t rsa
  3. ls

然后我们将id_rsa.pub公钥放入我们Azure中。

  1. cat id_rsa.pub

然后添加私钥到Jenkins中,注意头尾都要复制,用户名使用什么用户生成的就写什么用户,这里我是root

  1. cat id_rsa
  1. -----BEGIN OPENSSH PRIVATE KEY-----
  2. b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABlwAAAAdzc2gtcn
  3. NhAAAAAwEAAQAAAYEAntNOvGCS9RWFPgfB4mAIwE3sMd0/KQns956FZZHWWgrrNk4lwdti
  4. x1PqZ6ZYnRZZfKNE3dNcF6427hSwXx77jjWqfV5D96z+Sfem4aCjp5VZjiejTIm7iNuUMv
  5. pbihXtHtpCBDiGnSFHYLc1OuFknSWONFGEHdZmkGknK9nIIFff0szOunMrQE25lbNe8Bgk
  6. hbgL5optNhALUrLhE8k4y1/gCSOVDaLcbn/W3WrireJ2fVGjQuba8b5GdlUFn4qrB1EcEz
  7. OC4UwleohuBv4lQpcifkJC9Db+D0upzka8pJQt4egVcAUmzwZouMgGalhJCyr8Ra1PZsCF
  8. yoI6YR9VR9jriNQWD/OM4pbCYyh3txa8cJYbuRK2D6+lt21YRmEqhDX65Ei4VwDvLzsBqV
  9. GvNIGDGnq152pecixgt/fv6S8XESj7gkq07ccoKDaTaBfAnKxiu3qgJjJ8qSAbHmCiaMEo
  10. 7T/qxm2ODZr7r8iek/F65wsOeJZ5eA/FM+Q5i6JDAAAFmAjJjWMIyY1jAAAAB3NzaC1yc2
  11. EAAAGBAJ7TTrxgkvUVhT4HweJgCMBN7DHdPykJ7PeehWWR1loK6zZOJcHbYsdT6memWJ0W
  12. WXyjRN3TXBeuNu4UsF8e+441qn1eQ/es/kn3puGgo6eVWY4no0yJu4jblDL6W4oV7R7aQg
  13. Q4hp0hR2C3NTrhZJ0ljjRRhB3WZpBpJyvZyCBX39LMzrpzK0BNuZWzXvAYJIW4C+aKbTYQ
  14. C1Ky4RPJOMtf4AkjlQ2i3G5/1t1q4q3idn1Ro0Lm2vG+RnZVBZ+KqwdRHBMzguFMJXqIbg
  15. b+JUKXIn5CQvQ2/g9Lqc5GvKSULeHoFXAFJs8GaLjIBmpYSQsq/EWtT2bAhcqCOmEfVUfY
  16. 64jUFg/zjOKWwmMod7cWvHCWG7kStg+vpbdtWEZhKoQ1+uRIuFcA7y87AalRrzSBgxp6te
  17. dqXnIsYLf37+kvFxEo+4JKtO3HKCg2k2gXwJysYrt6oCYyfKkgGx5gomjBKO0/6sZtjg2a
  18. +6/InpPxeucLDniWeXgPxTPkOYuiQwAAAAMBAAEAAAGBAJgHsw2U7/cUE4gOCuRzgsz5ig
  19. ctPoE9FAzvO8e+8s0cOIyx/2hyZTpiNDXlQFuWAjDRZGFmKXgtdj0tpqpW0PsOmdUJv8u8
  20. V2lcWu0NRLpstt3hSWpBSTc24MRva+JhHKp0x86cgRa1vUpx9M0Y5aObSGUCRpH9Ig5H6Y
  21. wLGosDMqfpDlXhWlxiSixnF5CBu6wYQaP7i5C9iOkve03iRrA+ZQi6e7oi1Bgd3QHzh2pl
  22. JYDN/ZZTvu66cV5iAlD2fUAWuLPLqX6YX2Dk+QUEsgpeAQWh/UwP+OB80Zi9ZldKYXg8Eq
  23. YkFRvw5p6C5p1nXbAgVXcspJ4ono1Rmid7frOG6Tj7SFtRGX4c+9E83Cp1hnbzsK1eOSFj
  24. TSySuHoNaoSDfc2Mk+Sl528GLk6sAFuzIPRq/n6rZw9tflVov88KmzRz7rzUWQZdvIjV/i
  25. PTk3zjHidlDXyHNdlh2IgPtUNgcJ2tlU18JMWLVUsyn5vGjR258LkiObdTDIPyTWWY4QAA
  26. AMByKEUNo7jglEYt4CikNMDdVy/VknhVxT9Uak4jl7QX2Y6QtrxP+AAiYmygSy9lODA...
  27. Bmk67tHIGRSKQzAAAAG3Jvb3RAY25zdnI2NC5pbmRvbS5pbnRlcm5hbAECAwQFBgc=
  28. -----END OPENSSH PRIVATE KEY-----

现在就可以了
然后我们可以通过创建一个项目简单方式进行测试一下。


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

评价

剑轩

2021/4/21 17:19:14

[兔子]

docker安装Jenkins

docker安装Jenkins[TOC] Jenkins简介 Jenkins自动化部署可以解决集成、测试、部署等重复性的工作,工具集成的效率明显高...

Jenkins在k8s中的安装

Jenkins在k8s中的安装[TOC] k8s部署Jenkins.yaml--- apiVersion: apps/v1 kind: Deployment #设置资源的类型为Deploym...

Jenkins常见问题解答

Jenkins常见问题解答[TOC] 忘记密码 我们有时难免会忘记密码如果连管理员的密码我们都忘记了怎么办?接下来我们来解决一...

Jenkins简单运用

Jenkins简单运用[TOC] 环境预备如果没有安装Jenkins,在此之前大家可以按照如下两篇文章进行安装:docker安装JenkinsJenki...

Jenkins安装皮肤插件

Jenkins安装皮肤插件[TOC] Simple Theme 插件介绍该插件允许使用自定义CSS和JavaScript自定义Jenkin的外观。它还允许替换F...

Jenkins添加构建slave(ssh)

Jenkins添加构建slave(ssh)[TOC] 在Jenkins中安装ssh构建插件 添加子节点 由于它并没有启动代理成功,我们...

Jenkins角色管理(Role Strategy)

Jenkins角色管理(Role Strategy)[TOC] Role Strategy插件介绍 使用Role Strategy插件来添加新的基于角色的机制来管理用...

Jenkins Pipeline简介与安装

Jenkins Pipeline简介与安装[TOC] Pipeline简介概念Pipeline,简单来说,就是一套运行在Jenkins上的工作流框架,将原来独立...

Jenkins Pipeline简单运用

Jenkins Pipeline简单运用[TOC] Pipeline简单运用创建一个任务流水线 我们从中可以看出,他最大的不同就是多了一个Pi...

Jenkins 常用构建触发器

Jenkins 常用构建触发器[TOC] Jenkins触发器种类 Jenkins内置4种构建触发器: 触发远程构建其他工程构建后触发 (Buil...

Jenkins 实现Gitlab Hook构建

Jenkins 实现Gitlab Hook构建[TOC] Git hook自动触发构建刚才我们看到在Jenkins的内置构建触发器中,轮询SCM可以实现Gitla...

Jenkins 参数构建

Jenkins 参数构建[TOC] 有时在项目构建的过程中,我们需要根据用户的输入动态传入一些参数,从而影响整个构建结果,这时我...

Jenkins 配置邮箱服务(163邮箱)

Jenkins 配置邮箱服务(163邮箱)[TOC] 安装Email插件graph LR A(Jenkins) -->B(Manage Jenkins) B(Manage Jenkins) -->C(...

Jenkins Pipeline凭证上传镜像至Harbor

Jenkins Pipeline凭证上传镜像至Harbor[TOC] 配置Harbor项目首先安装好harbor,可以参考以往文章:https://www.tnblog.ne...

Jenkins Blue Ocean插件

Jenkins Blue Ocean插件[TOC] 什么是 Blue Ocean? Blue Ocean 重新思考 Jenkins 的用户体验。Blue Ocean 是为Jenkins Pi...
这一世以无限游戏为使命!
排名
2
文章
635
粉丝
44
评论
93
docker中Sware集群与service
尘叶心繁 : 想学呀!我教你呀
一个bug让程序员走上法庭 索赔金额达400亿日元
叼着奶瓶逛酒吧 : 所以说做程序员也要懂点法律知识
.net core 塑形资源
剑轩 : 收藏收藏
映射AutoMapper
剑轩 : 好是好,这个对效率影响大不大哇,效率高不高
ASP.NET Core 服务注册生命周期
剑轩 : http://www.tnblog.net/aojiancc2/article/details/167
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术