Centos Stream 9安装Jenkins-2.485 构建自动化项目步骤

官网:https://www.jenkins.io/

1 下载

环境准备:
版本支持查询:https://pkg.jenkins.io/redhat-stable/
jdk
安装JDK17:https://blog.csdn.net/qq_44870331/article/details/140784297

yum  -y install epel-release wget  upgrade
wget -O /etc/yum.repos.d/jenkins.repo \
    https://pkg.jenkins.io/redhat/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat/jenkins.io-2023.key

这个下载太慢了,还是下面收到下包安装好
yum -y install jenkins

从清华源下载:https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat

wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.485-1.1.noarch.rpm --no-check-certificate

2 安装

rpm -ivh jenkins-2.485-1.1.noarch.rpm

3 查看安装的文件

rpm -ql jenkins

安装的文件

4 修改默认端口

vi /usr/lib/systemd/system/jenkins.service

4.1 改启动用户

在这里插入图片描述

4.2 改启动端口

JENKINS_PORT="16060"

端口

4.3 修改JDK位置:

Environment="JAVA_HOME=/opt/coisini/jdk-17.0.12"

jdk位置

5 赋权

chown -R root:root /var/lib/jenkins

6 创建快链接:

ln -s /usr/lib/systemd/system/jenkins.service /etc/systemd/system/jenkins.service
chmod 754 /etc/systemd/system/jenkins.service

7 重新加载配置

systemctl daemon-reload

8 相关命令

设置开机自启:systemctl enable jenkins
启动:systemctl start jenkins
状态:systemctl status jenkins
启动

9 开放端口:

firewall-cmd --zone=public --add-port=16060/tcp --permanent
firewall-cmd --reload

10 浏览器访问:

http://192.168..:16060/

11 需要输入管理密码, 在以下位置查看:

cat /var/lib/jenkins/secrets/initialAdminPassword

密码

12 个性化安装

按默认设置,把建议的插件都安装上:

自定义
安装插件

要等几分钟……有几个安装错误,后面点重试,就能装上了

1
bao存
就绪
页面

13 Manage Jenkins安装插件

在实现持续集成之前, 需要确保以下插件安装成功。

  • Maven Integration : Maven 集成管理插件。

  • Docker: Docker集成插件。

  • GitLab : GitLab集成插件。

  • Publish Over SSH:远程文件发布插件。

  • SSH: 远程脚本执行插件。

  • nodejs
    manage
    安装插件

安装maven、docker、Maven Integration、GitLab、Publish Over SSH、SSH、nodejs插件
方便后面配置本机软件位置

安装
安装等待

14 安装插件:

14.1 Git安装配置

  1. yum 安装方式
  yum -y install git
  1. 检查git版本
git version

14.2 Maven安装配置

  1. 下载安装包

下载地址: https://maven.apache.org/download.cgi

解压安装包

cd /opt/coisini/
mkdir maven
cd maven
wget https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.zip --no-check-certificate
yum -y install unzip
unzip -o apache-maven-3.9.9-bin.zip

ll

  1. 配置

环境变量配置
vi ~/.bash_profile

新增:

#maven
export MAVEN_HOME=/opt/coisini/maven/apache-maven-3.9.9
export PATH=$PATH:$MAVEN_HOME/bin

配置文件生效:

source ~/.bash_profile

修改镜像仓库配置:
vi /opt/coisini/maven/apache-maven-3.9.9/conf/settings.xml

需要把本机的仓库打包上传到服务器上(不上传会自动下载)
然后指定上传后的仓库配置

<localRepository>/opt/coisini/maven/apache-maven-3.9.9/repository</localRepository>

添加镜像地址:

<!--更换私服,https://developer.aliyun.com/mvn/guide-->

  <mirror>
  	<!--镜像的唯一标识符,区分不同mirror元素-->
         <id>aliyun-public</id>
         <!--对哪种仓库进行镜像,就是替代哪个仓库-->
         <mirrorOf>public</mirrorOf>
         <!--镜像名称-->
          <name>public</name>
         <!--镜像URL-->
         <url>https://maven.aliyun.com/repository/public</url>
    </mirror>

    <mirror>
  	<!--镜像的唯一标识符,区分不同mirror元素-->
         <id>aliyun-central</id>
         <!--对哪种仓库进行镜像,就是替代哪个仓库-->
         <mirrorOf>central</mirrorOf>
         <!--镜像名称-->
          <name>central</name>
         <!--镜像URL-->
         <url>https://maven.aliyun.com/repository/central</url>
    </mirror>

    <mirror>
  	<!--镜像的唯一标识符,区分不同mirror元素-->
         <id>aliyun-jcenter</id>
         <!--对哪种仓库进行镜像,就是替代哪个仓库-->
         <mirrorOf>jcenter</mirrorOf>
         <!--镜像名称-->
          <name>jcenter</name>
         <!--镜像URL-->
         <url>https://maven.aliyun.com/repository/public</url>
    </mirror>

添加源
ESC + :wq 保存退出

14.3 安装docker

docker安装:https://blog.csdn.net/qq_44870331/article/details/129735250

Docker Registry私有仓库安装配置

对于持续集成环境的配置,Jenkins会发布大量的微服务, 要与多台机器进行交互, 可以采用docker镜像的保存与导出功能结合SSH实现, 但这样交互繁琐,稳定性差, 而且不便管理, 这里我们通过搭建Docker的私有仓库来实现, 这个有点类似GIT仓库, 集中统一管理资源, 由客户端拉取或更新。

  1. 下载最新Registry镜像
docker pull registry:latest
  1. 启动Registry镜像服务
docker run -d -p 5000:5000 --name registry -v /usr/local/docker/registry:/var/lib/registry registry:latest

映射5000端口; -v是将Registry内的镜像数据卷与本地文件关联, 便于管理和维护Registry内的数据。

docker update registry --restart=always
  1. 查看仓库资源

访问地址:http://192.168.31.16:5000/v2/_catalog

启动正常, 可以看到返回:

{
"repositories": []
}

repositories
目前并没有上传镜像, 显示空数据。
如果上传成功, 可以看到数据:

  1. 配置Docker客户端

正常生产环境中使用, 要配置HTTPS服务, 确保安全,内部开发或测试集成的局域网环境,可以采用简便的方式, 不做安全控制。

先确保持续集成环境的机器已安装好Docker客户端, 然后做以下修改:

vi /lib/systemd/system/docker.service

修改内容:

ExecStart=/usr/bin/dockerd --insecure-registry 192.168.31.16:5000

这里
指向安装Registry的服务IP与端口。
重启生效:

systemctl daemon-reload
systemctl restart docker.service

15 持续集成生产实践配置

15.1 Jenkins工具配置

  1. 进入【系统管理】–> 【全局工具配置】
    配置

15.2 maven

配置本机maven配置文件
注意配置文件要精确到 .xml文件

改一下

15.3 配置JDK

填写本机JDK位置
在这里插入图片描述

15.4 配置Git

git

15.5 配置 maven 存在的目录

maven

15.6 docker 配置

如果没有docker 去插件那里下载,然后等待下载完
docker

15.7 保存

baocun

16 设置远程应用服务主机

1
2
凭据
添加
添加root
也可以这么点

点击
添加

添加ssh配置
系统
SSH配置:
SSH

添加
测试连接
测试连接

保存
保存

17 环境准备

17.1 mysql部署

  • 基于CentOS Stream 9平台安装MySQL8.4.0 LTS
  • 或者docker部署(虽然不推荐)
docker search mysql

docker pull mysql:8.0.39

mkdir /opt/coisini/mysql8
mkdir /opt/coisini/mysql8/logs
mkdir /opt/coisini/mysql8/mysql
mkdir /etc/mysql
touch /etc/mysql/conf.d

docker run -id \
-p 3307:3306 \
--name=mysql8 \
-v /opt/coisini/mysql8/conf:/etc/mysql/conf.d \
-v /opt/coisini/mysql8/logs:/var/log/mysql \
-v /opt/coisini/mysql8/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:8.0.39


docker exec -it mysql8 /bin/bash

firewall-cmd --zone=public --add-port=3307/tcp --permanent
firewall-cmd --reload

docker update mysql8 --restart=always

17.2 xxl-job-admin部署

使用xxl-job-admin2.4.2版本,主版本2.5.0还在开发,并不完整
下载xxl-job-admin:https://github.com/xuxueli/xxl-job/releases/tag/2.4.2
下载压缩包再解压打开
下载

一般导入新项目,会使用默认的maven下载依赖很慢,直接去设置里面改为自己本机的maven,配置了国内镜像,加载速度会很快
修改maven位置

MySQL导入初始数据:
初始化“调度数据库位置”: /xxl-job/doc/db/tables_xxl_job.sql
数据库
(1)修改xxl-job-admin中的application.properties文件,修改端口号为8888,数据库连接指向192.168.31.16这台服务器
8888
数据库连接
(2)执行打包命令cmd 中 admin目录下:mvn package
打包
这里

把生成的jar文件上传到服务器上
cd /opt/coisini

mkdir xxl-job

cd xxl-job/

ll

17.3 创建镜像文件:

vi Dockerfile

在xxl-job目录下创建Dockerfile文件,内容如下

FROM openjdk:8
COPY xxl-job-admin-2.4.2.jar /app.jar
CMD java -jar /app.jar
EXPOSE 8888

执行构建镜像命令:

docker build -t xxl-job-admin:2.4.2 .

创建容器

docker run -di --name=xxl-job-admin -p 8888:8888 xxl-job-admin:2.4.2

设置自启:

docker update xxl-job-admin --restart=always

访问

http://192.168.31.16:8888/xxl-job-admin/

默认登录账号密码 admin 123456

18 添加gitee账号密码 凭证

凭证
全局凭证

19 添加Gitee账号密码

gitee

20 新建自动化项目

新建项目
自由风格
自由风格
添加描述;
自动化构建
源码管理
源码
指定拉取分支,默认master
分支

添加构建步骤
构建
maven版本:就是之前在jenkins中配置的maven

目标:输入maven的命令 clean install -Dmaven.test.skip=true 跳过测试安装
配置
应用
构建计划;
构建计划

或者在首页的时候,点这里;

shouye1
构建中出现错误,根据相关错误去处理:
例如:maven目录错误
maven
之前maven的配置文件只写了:/opt/coisini/maven/apache-maven-3.9.9/conf
这需要指定到具体settings.xml文件。。
改一下
也去项目的该机选项
高级
也有xml配置文件配置,路径要确认好

改好之后重新构建一下就可以了


END 感谢阅览~


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/921856.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu修改成静态ip

先用ifconfg查询网卡名称 例如以下的是enp10s0 enp10s0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.100.159 netmask 255.255.255.0 broadcast 192.168.100.255inet6 fe80::127c:61ff:fe4c:ab6b prefixlen 64 scopeid 0x20<link>ether…

Canvas 前端艺术家

目前各种数据来看&#xff0c;前端未来在 数据可视化 和 AI 这两个领域会比较香&#xff0c;而 Canvas 是 数据可视化 在前端方面的基础技术。所以给大家唠唠Canvas这个魔幻工具。 Canvas 介绍 Canvas 中文名叫 “画布”&#xff0c;是 HTML5 新增的一个标签。Canvas 允许开发…

WEB攻防-通用漏洞文件上传二次渲染.htaccess变异免杀

知识点&#xff1a; 1、文件上传-二次渲染 2、文件上传-简单免杀变异 3、文件上传-.htaccess妙用 4、文件上传-PHP语言特性 1、上传后门时&#xff0c;文件内容带.就不行 这时可以上传一个转换后的ip地址&#xff0c;ip地址对应网站包含后门代码 转换后的int会在访问的时候…

Linux驱动开发(9):pinctrl子系统和gpio子系统--led实验

在前面章节&#xff0c;我们有过使用寄存器去编写字符设备的经历了。这种直接在驱动代码中&#xff0c; 通过寄存器映射来对外设进行使用的编程方式&#xff0c;从驱动开发者的角度可以说是灾难。 因为每当芯片的寄存器发生了改动&#xff0c;那么底层的驱动几乎得重写。 那么…

Element-Ui组件(icon组件)

一、前言 本篇文章主要是对官网的Icon组件进行总结归纳Icon 图标 | Element Plus 在现代Web应用开发中&#xff0c;图标是用户界面设计中不可或缺的一部分。它们不仅提升了用户体验&#xff0c;还使得信息的传达更加直观和高效。本文主要对Element Plus 官方提供的Icon组件进行…

Echarts+VUE饼图的使用(基础使用、多个饼图功能、单组饼图对应颜色使用)

安装&#xff1a;npm install echarts --save 配置:main.js // 引入echarts import * as echarts from echarts Vue.prototype.$echarts echarts一、基础饼图&#xff08;直接拷贝就能出效果&#xff09; <div class"big-box" ref"demoEhart"><…

文件管理 II(文件的物理结构、存储空间管理)

一、文件的物理结构 文件实际上是一种抽象数据类型&#xff0c;我们要研究它的逻辑结构、物理结构&#xff0c;以及关于它的一系列操作。文件的物理结构就是研究文件的实现&#xff0c;即文件数据在物理存储设备上是如何分布和组织的。同一个问题有两个方面的回答&#xff1a;…

半导体、晶体管、集成电路、芯片、CPU、单片机、单片机最小系统、单片机开发板-概念串联辨析

下面概念定义从小到大串联&#xff1a; 半导体&#xff08;semiconductor&#xff09;&#xff1a; 是一类常温下导电性能介于导体与绝缘体之间的材料&#xff0c;这种材料的导电性可以随着外部环境比如电压、温度、光照的变换而改变。常见的半导体材料有硅、锗、砷化镓等。 晶…

【Z240001】基于SpringBoot+Vue实现的酒店管理系统的设计与实现

基于SpringBootVue实现的酒店管理系统的设计与实现 1. 项目描述2. 运行环境3.界面展示4.源码获取 1. 项目描述 基于SpringBootVue实现的酒店管理系统设计了管理员、员工、用户三种角色。 前台界面里游客和已经登录的用户可以浏览客房信息、公告信息等&#xff0c;已经登录的用…

【计算机网络】解决bind error

服务器有时可以立即重启&#xff0c;有时候无法立即重启 — bind error 首先要知道&#xff1a;四次挥手动作完成之后&#xff0c;主动断开连接的一方要维持一段时间的TIME_WAIT bind error原因&#xff1a;因为是服务器主动断开的&#xff0c;所以服务器要去维持TIME_WAIT状…

爬虫实战:采集知乎XXX话题数据

目录 反爬虫的本意和其带来的挑战目标实战开发准备代码开发发现问题1. 发现问题[01]2. 发现问题[02] 解决问题1. 解决问题[01]2. 解决问题[02] 最终结果 结语 反爬虫的本意和其带来的挑战 在这个数字化时代社交媒体已经成为人们表达观点的重要渠道&#xff0c;对企业来说&…

关于相机选型的一些参数说明

上一篇&#xff1a;关于相机的一些参数计算&#xff08;靶面、视野等&#xff09; 目录 1.卷帘快门和全局快门1.1 卷帘快门1.2 全局快门PS&#xff1a;视觉伺服与快门选择 2.黑白和彩色3.CCD和CMOS3.1 CCD3.2 CMOSCCD VS CMOS 4.面阵和线扫4.1 面阵4.2 线扫4.3 面阵 VS 线扫 5.…

使用 helm 部署 gitlab

一、下载 Gitlab chart 进入 artifacthub 官网 选择你想要的版本&#xff08;我选择的chart版本是 8.4.0 , gitlab 版本是17.4.0 &#xff09; 进入到控制台&#xff0c;添加helm仓库 如果你想不改任何配置&#xff0c;你可以执行安装命令&#xff0c;等待安装即可helm instal…

React (三)

文章目录 项目地址十二、性能优化12.1 使用useMemo避免不必要的计算12.2 使用memo缓存组件,防止过度渲染12.3 useCallBack缓存函数12.4 useCallBack里访问之前的状态(没懂)十三、Styled-Components13.1 安装13.2给普通html元素添加样式13.3 继承和覆盖样式13.4 给react组件添…

win10局域网加密共享设置

1、创建共享账户 我的电脑右键选择管理 选择本地用户和组 -> 用户 双击用户 在空白区域右键,新建用户 然后创建用户 点击创建后 2、设置网络 右下角网络右键

如何从 VMware 官网下载最新版本的 VMware Workstation

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 下载VMware 📒📝 操作步骤🎈 获取方式 🎈⚓️ 相关链接 ⚓️📖 介绍 📖 你是否曾尝试从 VMware 官网下载 VMware Workstation,但总是被繁杂的选择和复杂的操作困扰?VMware 提供的产品种类繁多,而且官网页面设计复…

服务器数据恢复—raid5阵列热备盘上线失败导致EXT3文件系统不可用的数据恢复案例

服务器数据恢复环境&#xff1a; 两组分别由4块SAS硬盘组建的raid5阵列&#xff0c;两组阵列划分的LUN组成LVM架构&#xff0c;格式化为EXT3文件系统。 服务器故障&#xff1a; 一组raid5阵列中的一块硬盘离线。热备盘自动上线替换离线硬盘&#xff0c;但在热备盘上线同步数据…

机械设计学习资料

免费送大家学习资源&#xff0c;已整理好&#xff0c;仅供学习 下载网址&#xff1a; https://www.zzhlszk.com/?qZ02-%E6%9C%BA%E6%A2%B0%E8%AE%BE%E8%AE%A1%E8%A7%84%E8%8C%83SOP.zip

Proteus 8.17的详细安装教程

通过百度网盘分享的文件&#xff1a;Proteus8.17(64bit&#xff09;.zip 链接&#xff1a;https://pan.baidu.com/s/1zu8ts1Idhgg9DGUHpAve7Q 提取码&#xff1a;8q8v 1.右击【Proteus8.17(64bit&#xff09;.zip】&#xff0c;选择【全部解压缩......】。 &#xff0c; 2.…

qt添加模块

以QtNetwork模块为例 方式一 扩展-qt vs tools-qt project settings 方式二 右键选中项目-属性-qt project settings 方法三 在此界面选择select modules,即可进行相应模块添加