jenkinsjenkins自动化部署笔记(代码片段)

ThinkerWing ThinkerWing     2023-02-01     327

关键词:


安装dnf DNF(Dandified Yum)是新一代的RPM软件包管理器。

DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。
DNF使用RPM,libsolv和hawkey库进行包管理操作,Fedora22已经默认使用DNF。

安装DNF
DNF并未默认安装在RHEL或CentOS7系统中,但可以在使用YUM的同时使用DNF。

安装epel-release依赖:yum install epel-release 或者 yum install epel-release -y
安装DNF包:yum install dnf 或者 yum install dnf -y

安装java环境,Jenkins依赖java环境

dnf search java-1.8 
dnf install java-1.8.0-openjdk.x86_64

安装Jenkins

因为Jenkins本身是没有在dnf的软件仓库包中的,所以我们需要连接Jenkins仓库:

wget是Linux中下载文件的一个工具,-O表示输出到某个文件夹并且命名为什么文件;

rpm:全称为The RPM Package Manage,是Linux下一个软件包管理器;

wget –O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo

安装后  通过ls 命令用于显示指定工作目录下之内容

pwd 指令可立刻得知您目前所在的工作目录的绝对路径名称。

发现在root目录下,但是我们需要将他安装在etc

通过
mv jenkins.repo /etc/yum.repos.d/

cd  /etc/yum.repos.d/

[root@iZbp1b3dkwu5uz0qvt6m7oZ ~]# cd  /etc/yum.repos.d/
[root@iZbp1b3dkwu5uz0qvt6m7oZ yum.repos.d]# ls
CentOS-AppStream.repo   CentOS-CR.repo         CentOS-Extras.repo     CentOS-PowerTools.repo  docker-ce.repo        epel.repo                  jenkins.repo
CentOS-Base.repo        CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Sources.repo     epel-modular.repo     epel-testing-modular.repo
CentOS-centosplus.repo  CentOS-epel.repo       CentOS-Media.repo      CentOS-Vault.repo       epel-playground.repo  epel-testing.repo



# 导入GPG密钥以确保您的软件合法
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
# 或者
rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key

编辑一下文件/etc/yum.repos.d/jenkins.repo

vi jenkins.repo
i   输入i 显示insert 插入

[jenkins]
name=Jenkins-stable
baseurl=http://pkg.jenkins.io/redhat-stable
gpgcheck=1

删除redhat-stable后面的-stable
最终显示
[jenkins]
name=Jenkins-stable
baseurl=http://pkg.jenkins.io/redhat
gpgcheck=1

esc
shift + :
输入wq保存并退出

dnf安装Jenkins

dnf install jenkins # --nogpgcheck(可以不加)

启动Jenkins的服务:

systemctl start jenkins
// 查看状态
systemctl status jenkins
//随着操作系统的启动而启动
systemctl enable jenkins
//问题解决网站
https://www.cnblogs.com/jassa/p/12531623.html

jenkins.service 不是本地服务,重定向到 systemd-sysv-install。
执行:/usr/lib/systemd/systemd-sysv-install enable jenkins

访问IP地址8080端口

Jenkins默认使用8080端口提供服务,所以需要加入到安全组中:
轻量应用服务器在 安全->防火墙 中开放端口

Jenkins配置

解锁 Jenkins
为了确保管理员安全地安装 Jenkins,密码已写入到日志中(不知道在哪里?)该文件在服务器上:

/var/lib/jenkins/secrets/initialAdminPassword

请从本地复制密码并粘贴到下面。

cat /var/lib/jenkins/secrets/initialAdminPassword

nginx 配置

安装nginx

dnf install nginx

报错

Repository epel is listed more than once in the configuration
Last metadata expiration check: 0:24:32 ago on Thu 11 Nov 2021 11:17:04 PM CST.
All matches were filtered out by exclude filtering for argument: nginx
Error: Unable to find a match: nginx

原因: 也有可能是已经安装了,或者谷歌搜索有挺多文章的

启动nginx:

systemctl start nginx
systemctl status nginx
systemctl enable nginx

查看nginx进程命令
ps -ef | grep  nginx
pkill -9 nginx

vscode 安装安插Remote-SSH

配置github管理项目

需要生成token

构建触发器:

这里的触发器规则是这样的:

定时字符串从左往右分别是:分 时 日 月 周
#每半小时构建一次OR每半小时检查一次远程代码分支,有更新则构建
H/30 * * * *

#每两小时构建一次OR每两小时检查一次远程代码分支,有更新则构建
H H/2 * * *

#每天凌晨两点定时构建
H 2 * * *

#每月15号执行构建
H H 15 * *

#工作日,上午9点整执行
H 9 * * 1-5

#每周1,3,5,从8:30开始,截止19:30,每4小时30分构建一次
H/30 8-20/4 * * 1,3,5

虽然,初始化的时候,如果机器的CPU和内存配置都比较低的话,就多等一会儿;但是操作时发现很久都加载不出来。

遇到的一些问题和解决

解决:

cd /var/lib/jenkins/updates/
 ls
default.json
vim default.json 

把第一行的源地址谷歌改成百度
systemctl restart jenkins
1.关闭Jenkins

    只需要在访问jenkins的网站后面加上exit即可。如访问的地址是 http://192.168.240.179:8080/,那只要浏览器输入http://192.168.240.179:8080/exit即可退出,或者http://localhost:8080/exit

2.重启Jenkins

同理:http://192.168.240.179:8080/restart

3.重新加载配置

 http://192.168.240.179:8080/reload

查看git安装目录

Mac平台:在命令行中输入which git, 就会显示git的安装位置了;

Windows平台:打开cmd,输入where git就会显示git的安装路径了.

解决Jenkins报Error fetching remote repo 'origin’的办法

Jenkins build时有时候报Error fetching remote repo ‘origin’,网上都说是git权限问题,试了之后也没有用,找了很久才发现,造成这个问题的原因是Jenkins有个工作空间( workspace)的概念,Jenkins构建时产生的缓存会存储到工作空间,清理掉缓存就好,如下图

jenkins Error performing command: git ls-remote -h

在出错的地方填入: “whereis git"的地址 + “/bin/git” (如上面"whereis git"的地址为”/usr/local/git",则应该填入 “/usr/local/git/bin/git”) 并保存

持续集成jenkinsjenkins+git+maven项目构建自动化部署

GIT配置1.1 前言:需要安装 git 客户端.yum install git1.2 Jenkins 配置插件  Git 在仪表盘选择ManageJenkins>>PluginManager>>进入如下页面,可以选择可选的插件,安装完成后的插件在installed里面可以看到,我这... 查看详情

ansible自动化部署之路笔记(代码片段)

使用ansible编写自动化部署playbook,解放运维手工操作模块使用笔记changed_when判断条件,用于重发发布,检测服务是否已经启用1-hosts:redis2gather_facts:no3tasks:4#判断是否已经发布5-name:redisalreadydeploy?6shell:./etc/profile&&./etc/bashrc&... 查看详情

jenkins+docker+github+vue自动化部署(代码片段)

一、介绍1、JenkinsJenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。前身是Hudson是一个可扩展的持... 查看详情

简单实用的jenkins部署及操作(代码片段)

JenkinsJenkins是开源CI&CD软件领导者,提供超过1000个插件来支持构建、部署、自动化,满足任何项目的需要。案例1.官方文档:https://www.jenkins.io/zh/doc/下载jenkiins:https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.2 查看详情

关于linux中keepalived高可用热备自动化部署的一些笔记(代码片段)

...式Keepalived安装部署Keepalived脚本方式配置服务检查Keepalived自动化部署Ansible角色编写食用方式:需要Linux、Ansible基础知识理解不足小伙伴帮忙指正勿忘国耻,铭记历史官网帮助文档:https:// 查看详情

关于linux中keepalived高可用热备自动化部署的一些笔记(代码片段)

...式Keepalived安装部署Keepalived脚本方式配置服务检查Keepalived自动化部署Ansible角色编写食用方式:需要Linux、Ansible基础知识理解不足小伙伴帮忙指正勿忘国耻,铭记历史官网帮助文档:https:// 查看详情

关于linux下redis自动化部署的一些笔记(代码片段)

...件的简单介绍ansibleredis角色ansible-role-redis编写通过ansible自动化安装理解不足小伙伴帮忙指正傍晚时分,你坐在屋檐下,看着天慢慢地黑下去 查看详情

pytest接口自动化测试框架|jenkins集成初探

...署和持续交付的区别就是最终部署到生产环境是自动化的JenkinsJenkins是什么?Jenkins是一款开源CI&CD软件,用于自动化各种任务,包括构建、测试和部署软件。Jenkins支持各种运行方式,可以通过系统包、Docker或者... 查看详情

jenkins实现自动部署

主机A搭建gitlab。gitlab下载:https://www.gitlab.cc/downloads/  (gitlab中文网)主机B搭建jenkinsjenkins下载:https://jenkins.io/index.html (gitlab官网)两端同时下载openssl-servergitlab端建好,创建一个项目。首先需要在gitlab端配置jenkin 查看详情

docker安装jenkins(代码片段)

一.什么是JenkinsJenkins是当前非常流行的一款持续集成工具,可以帮助大家把更新后的代码自动部署到服务器上运行。二.为什么用docker版的JenkinsJenkins主要有三种安装方式下载官方war包,放到tomcat中直接运行。yum安装,感兴趣的朋... 查看详情

jenkins部署(代码片段)

JenkinsJenkins是一款功能十分强的的开源软件,他的功能是支持一些项目的自动化部署。Jenkins的主要强大之处就是它支持的插件很多,借助插件可以实现很强的功能。我们在对一个项目进行开发的时候,可以使用Jenkins对项目进行... 查看详情

jenkinsjenkins配置从节点,实现远程主机调用功能

一、需求  使用Jenkins进行持续集成部署过程中,需要用到远端主机的处理功能。如部署到远程主机、文件备份等功能二、思路  1、当远端主机为Linux系统时使用PublishOverSSHPlugin可以调用远端Shell脚本,文件备份、服务器重启... 查看详情

docker+jenkins一键自动化部署超简单~(代码片段)

...看docker版本信息,看的到说明操作成功了。二、安装JenkinsJenkins官网:https://www.jenkins.io/zh/1、安装Jenkins有了Docker之后,安装一切都是一 查看详情

jenkinsjenkins入门教程

一、Jenkins下载和部署   二、创建Item任务      参考资料​​Jenkins用户手册​​​​Jenkins介绍_w3cschool​​​​jenkins详细入门教程_字节开发测试的博客jenkins教程​​​​Jenkins从入门到精通_水木... 查看详情

关于linux下haproxy自动化部署的一些笔记整理(代码片段)

写在前面学习OKD,里面的路由组件通过HAproxy实现所以这里学习HAproxy,博文内容涉及手工部署HAproxy编写Ansible角色自动部署HAproxy理解不足小伙伴帮忙指正傍晚时分,你坐在屋檐下,看着天慢慢地黑下去,心里寂... 查看详情

jenkins自动部署笔记(二)全局工具配置

...已经安装(3)MavenIntegrationplugin(4)PublishOverSSH用于远程部署(5)GitlabHookPlugin用于gitlab提交触发自动部署以上内容在Jenkins自动部署笔记(一)中有详细介绍进入系统管理。进入全局工具配置。1.JDK(1)点击“JDK安装...”(2)点... 查看详情

jenkinsjenkins的安装与配置(代码片段)

一、环境准备1.下载jdk 官方下载地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html2.下载Tomcat官方下载地址:https://tomcat.apache.org/download-90.cgi3.下载Jenkins(可下载.war和.rpm两种 查看详情

阿晨的运维笔记|一键https并开启自动更新(代码片段)

...法!开始之前,建议按照阿晨的另一篇Ubuntu一键部署Docker先部署上Docker和Dock 查看详情