当前位置: 首页 > news >正文

Jenkins(持续集成与自动化部署)

Jenkins

是一个开源软件项目,是基于Java开发的一种持续集成工具。

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

GitLab安装使用

安装前提:内存至少需要4G

官方网站:https://about.gitlab.com/

安装文档:https://docs.gitlab.cn/jh/install/requirements.html

基于ssh下安装

1 安装依赖
sudo yum install -y curl policycoreutils-python openssh-server perl
sudo systemctl enable sshd
sudo systemctl start sshd
2 配置镜像
# 需要一些时间
curl -fsSL https://packages.gitlab.cn/repository/raw/scripts/setup.sh | /bin/bash
3 开始安装
# gitlab的访问地址,自己的站点ip地址,如果是公式,配置对应的域名,也需要时间
sudo EXTERNAL_URL="http://127.0.0.1" yum install -y gitlab-jh

在安装过程中指定自定义密码,否则会随机生成密码,存储在 /etc/gitlab/initial_root_password 中(该文件在24 小时后会自动删除,建议安装成功,立即修改初始密码)使用此密码和用户名 root 登录。

# 查看初始密码
cat /etc/gitlab/initial_root_password  

gitlab常用命令

gitlab-ctl start            # 启动所有 gitlab 组件;
gitlab-ctl stop             # 停止所有 gitlab 组件;
gitlab-ctl restart          # 重启所有 gitlab 组件;
gitlab-ctl status           # 查看服务状态;
gitlab-ctl reconfigure      # 启动服务;
vi /etc/gitlab/gitlab.rb    # 修改默认的配置文件;
gitlab-ctl tail             # 查看日志;
4 安装完成

安装完成,访问设置的IP地址,如果出现502的情况,需要再等待一会,在进入,输入用户名(root)和密码,进行登录。

在菜单 - 管理员 - 用户 - 找到自己的用户,进行修改密码。

5 设置中文

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

下面有确认按钮,点击确认后,进行刷新页面,界面就变成中文了。

6 修改个人密码

在这里插入图片描述

7 创建项目

创建空白项目

在这里插入图片描述

8 提交项目

使用开发工具,进行创建新项目,进行提交代码,然后刷新GitLab页面

在这里插入图片描述

基于docker下安装

安装文档:https://docs.gitlab.cn/jh/install/docker.html

前提安装好docker

1 使用容器安装gitlab

# 创建/srv/gitlab的目录
docker run --detach \--hostname 127.0.0.1 \--publish 443:443 --publish 80:80 \--name gitlab \--restart always \--volume $GITLAB_HOME/config:/etc/gitlab:Z \--volume $GITLAB_HOME/logs:/var/log/gitlab:Z \--volume $GITLAB_HOME/data:/var/opt/gitlab:Z \--shm-size 256m \registry.gitlab.cn/omnibus/gitlab-jh:latest

2 启动容器

docker start gitlab

3 查看已存在的容器

docker ps -a

4 进入容器

docker exec -it  gitlab /bin/bash
# 查看默认的初始的密码
cat /etc/gitlab/initial_root_password

5 安装完成

安装完成,访问设置的IP地址,如果出现502的情况,需要再等待一会,在进入,输入用户名(root)和密码,进行登录。

在菜单 - 管理员 - 用户 - 找到自己的用户,进行修改密码。

Jenkins安装

安装前提:内存至少512MB、Java 8 以上、Maven环境

官方文档:https://www.jenkins.io

中文版:https://www.jenkins.io/zh/

1 安装JDK

# 查看有哪些jdk的包
yum search java|grep jdk
# 进行安装一个版本的JDK
yum install java-xxx-openjdk
# 安装完,查看版本
java -version

2 安装 Jenkins

# 把下载好的jenkins.war,上传到服务器上
# 然后进行运行该包(默认端口是8080)
java -jar jenkins.war
# 首次启动war包会在`/root/.jenkins`生成配置文件,
# 初始化后的密码:(注意密码查看后会消失)
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
xxxxxx(初始密码)

3 配置完成

# 得到初始密码后,进行访问:
xxxip:8080
# 在管理员密码,输入初始密码
# 在自定义Jenkins,选择安装推荐的插件
# 然后创建一个管理员用户

Maven安装

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

Maven的安装,找到最新的版本,下载后复制到Jenkins所在服务器解压缩就可以

# 把下载好的maven包(后缀是gz),上传到服务器上,进行解压
tar zxvf xxmaven.tar.gz
# 把解压包,放到/usr/local/maven目录下
mv xxmaven包 /usr/local/maven
# 查看一下版本号
/usr/local/maven/bin/mvn -v

-------- 后续持续更新补充 --------

相关文章:

Jenkins(持续集成与自动化部署)

Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具。 官网:https://www.jenkins.io/ GitLab安装使用 安装前提:内存至少需要4G 官方网站:https://about.gitlab.com/ 安装文档:https://docs.gitlab.c…...

redis7基础篇2 redis的哨兵模式2

目录 一 哨兵模式 1.1 redis的哨兵模式作用 1.2 redis的哨兵模式架构 1.3 redis的哨兵模式参数说明 二 redis的哨兵模式搭建 2.1 redis的主从复制模式 2.2 redis的sentinel配置文件 2.3 redis的实例节点和sentinel节点启动 3.3 redis的哨兵模式原理 3.3.1 redis的哨兵…...

windows终端conda activate命令行不显示环境名

问题: 始终不显示环境名 解决 首先需要配置conda的环境变量 确保conda --version能显示版本 然后对cmd进行初始化,如果用的是vscode中的终端,那需要对powershell进行初始化 Windows CMD conda init cmd.exeWindows PowerShell conda …...

SpringBoot 2.6 集成es 7.17

引言 在现代应用开发中,Elasticsearch作为一个强大的搜索引擎和分析引擎,已经成为许多项目不可或缺的一部分。Spring Boot作为Java生态中最受欢迎的微服务框架之一,其对Elasticsearch的支持自然也是开发者关注的焦点。本文将详细介绍如何在S…...

加固服务器有什么用?

为什么越来越多的企业和个人都在加固他们的服务器?加固服务器不仅可以保护数据安全,还能提升整体系统的稳定性和可靠性。下面是聚名网的一些介绍。 加固服务器的首要目的就是提高安全性。随着网络攻击手段的不断演变,黑客和恶意软件的威胁也…...

Personal APP

1、Matlab 2023b https://www.bilibili.com/opus/887246540317392920 https://blog.csdn.net/qq_25719943/article/details/138096918 https://www.jokerdown.com/22886.html 2、 3、...

探索最新的编程技术趋势:AI 编程助手和未来的编程方式

随着技术的飞速发展,编程技术领域在近年来经历了深刻的变革。从人工智能到低代码开发工具,新的技术趋势不断涌现,不仅大幅提高了开发效率,也重新定义了开发者的角色和工作方式。本篇博客将探讨几项当前最值得关注的编程技术&#…...

Android:文件管理:打开文件意图

三步走&#xff1a; 一、先在AndroidManifest.xml声明provider&#xff1a; <providerandroid:name"androidx.core.content.FileProvider"android:authorities"${applicationId}.FileProvider"android:exported"false"android:grantUriPermi…...

从纯虚类到普通类:提升C++ ABI兼容性的策略

在C编程中&#xff0c;纯虚类&#xff08;也被称为抽象类&#xff09;通常用于定义接口&#xff0c;而普通类则包含具体的实现。然而&#xff0c;在某些情况下&#xff0c;将纯虚类转换为普通类并提供默认实现&#xff0c;可以显著提升应用程序二进制接口&#xff08;ABI&#…...

QT中如何限制 限制QLineEdit只能输入字母,或数字,或某个范围内数字等限制约束?

在 Qt 中&#xff0c;你可以通过多种方式来限制 QLineEdit 只能输入特定类型的字符&#xff0c;如字母、数字或某个范围内的数字。以下是一些常见的方法&#xff1a; 1. 使用输入验证器&#xff08;QIntValidator, QDoubleValidator, QRegExpValidator&#xff09; Qt 提供了…...

Tailwind CSS 使用简介

参考网站安装 - Tailwind CSS 中文网 号称是开始使用 Tailwind CSS 通过 npm 安装 tailwindcss&#xff0c;并创建你的 tailwind.config.js 文件。 npm install -D tailwindcss npx tailwindcss init 在 tailwind.config.js 文件中添加所有模板文件的路径。 /** type {im…...

iOS 逆向学习 - iOS Architecture Cocoa Touch Layer

iOS 逆向学习 - iOS Architecture Cocoa Touch Layer 一、Cocoa Touch Layer 简介二、Cocoa Touch Layer 的核心功能1. UIKit2. Event Handling&#xff08;事件处理&#xff09;3. Multitasking&#xff08;多任务处理&#xff09;4. Push Notifications&#xff08;推送通知&…...

C语言实现库函数strlen

size_t是 unsigned int fgets会读入\n&#xff0c;用strcspn函数除去 assert判读指针是否为空指针&#xff0c;使用前要引头文件<assert.h> #include <stdio.h> #include <assert.h> size_t mystrlen(const char* str) {assert(str);size_t count 0;while …...

050_小驰私房菜_MTK Camera debug, data rate 、mipi_pixel_rate 确认

mipi_pixel_rate = data rate * 4 / 10 (4 是表示4lane,10表示raw数据是10bit) mipi_pixel_rate 信息,我们可以通过 sentest命令打印看到: 下面的信息我们可以看到,mipi_pixel_rate = 501.357739Mpps,mipi rate = 10000000,是对应的我们驱动文件里面配置写的mipi_pixel_r…...

(六)vForm 动态表单(数据量大,下拉选卡顿问题)

系列文章目录 (一)vForm 动态表单设计器之使用 (二)vForm 动态表单设计器之下拉、选择 (三)vForm 动态表单解决下拉框无数据显示id问题 (四)vForm 动态表单自定义组件、属性 (五)vForm 动态表单文件上传、下载 文章目录 目录 前言 一、组件改造 1.添加分页所需参…...

【mybatis-plus问题集锦系列】mybatis使用xml配置文件实现数据的基础增删改查

简单的数据查询&#xff0c;我们可以在mapper接口里面去实现&#xff0c;但是如果是复杂的查询&#xff0c;我们就可以使用xml配置文件去做&#xff0c; 官网链接xml配置文件 实现效果 实现代码 根据mapper接口的包结构&#xff0c;在resources包里面新建同名同结构的xml文件…...

投稿指南【NO.12_14】【极易投中】期刊投稿(毛纺科技)

近期有不少同学咨询投稿期刊的问题&#xff0c;大部分院校的研究生都有发学术论文的要求&#xff0c;少部分要求高的甚至需要SCI或者多篇核心期刊论文才可以毕业&#xff0c;但是核心期刊要求论文质量高且审稿周期长&#xff0c;所以本博客梳理一些计算机特别是人工智能相关的期…...

机器学习算法的分类

一、按学习方式分类 1.监督学习&#xff08;Supervised Learning&#xff09; &#xff08;1&#xff09;定义&#xff1a;使用已标记的数据进行训练&#xff0c;每个输入数据都有对应的输出标签。模型学习输入与输出之间的映射关系。 按以上可以分为以下两种&#xff1a; …...

Linux操作系统下,挂ILA

一、在linux下安装vivado2018.3 参考视频&#xff1a;Linux下vivado安装教程_哔哩哔哩_bilibili 复制安装包进入虚拟机 安装包链接&#xff1a;https://pan.quark.cn/s/ca1a15d446fa 我的vmware tools无法使用&#xff0c;不能直接拖进虚拟机&#xff0c;所以使用了U盘复制…...

HTML——26.像素单位

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>像素</title></head><body><!--像素&#xff1a;1.指设备屏幕上的一个点&#xff0c;单位px&#xff0c;如led屏上的小灯朱2.当屏幕分辨率固定时&…...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...