jenkins 工具使用
使用方式
- 替代手动,自动化拉取、集成、构建、测试;
- 是CI/CD持续集成、持续部署主流开发模式中重要的环节;
- 必须组件
- jenkins-gitlab,代码公共仓库服务器(至少6G内存);
- jenkins-server,需要安装 jdk/maven;
- test-server, 测试服务器;
- 必备知识
- shell脚本编写
- java开发技能
- ssh 使用
gitLab
- 安全一体化DevOps平台;
- 网址
- 安装指导
- 企业内部使用的代码托管平台,类似的有github,gitee等开源的代码托管平台;
- 以CentOS 7为例子(仅支持CentOS 的7版本)
ssh下安装gitlab
- 安装依赖项
# 安装 curl 网络工具
sudo yum install -y curl
# policycoreutils-python
sudo yum install -y policycoreutils-python
# 安装 openssh-server
sudo yum install -y openssh-server
# 安装perl
sudo yum install -y perl# 开机启动 sshd 服务
sudo systemctl enable sshd
sudo systemctl start sshd # 启动ssh服务# 防火墙中打开http、https访问
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
# 重新加载防火墙配置
sudo systemctl reload firewalld# postfix服务发送邮件
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
其他配置
其他SMTP配置
- 安装gitlab
# 方式1 配置gitlab的软件源(一般用户可能没有权限)
curl -L get.gitlab.cn | bash
# 方式2 配置gitlab的软件源 (一般用户可能没有权限)
curl -fsSL https://packages.gitlab.cn/repository/raw/scripts/setup.sh | /bin/bash# 安装gitlab
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-jh
# EXTERNAL_URL 映射本地ip 的域名,后续通过web访问gitlab服务
# vim /etc/hosts
# 192.168.211.135 gitlab.example.com
安装过程较慢,耐心等待,安装成功如下:
- 启动gitlab
安装成功即已启动
# 管理 gitlab服务 占用80端口,防止与nginx冲突
gitlab-ctl start/stop/restart/status/reconfigure
# 配置
vim /etc/gitlab/gitlab.rb
- web界面访问,打开浏览器,输入本地ip(如http://192.168.211.135)
账户:root
密码:在/etc/gitlab/xxx_password
登录后修改密码;
docker下安装gitlab
相关文章:

jenkins 工具使用
使用方式 替代手动,自动化拉取、集成、构建、测试;是CI/CD持续集成、持续部署主流开发模式中重要的环节;必须组件 jenkins-gitlab,代码公共仓库服务器(至少6G内存);jenkins-server,…...

使用C语言实现字符推箱子游戏
使用C语言实现字符推箱子游戏 推箱子(Sokoban)是一款经典的益智游戏,玩家通过移动角色将箱子推到目标位置。本文将带你一步步用C语言实现一个简单的字符版本的推箱子游戏。 游戏规则 玩家只能推箱子,不能拉箱子。只能将箱子推到…...
用SpringBoot API实现识别pdf文件是否含有表格
要使用Spring Boot API 实现一个识别 PDF 文件是否含有表格的功能,你可以结合 PDF 解析库(如 Apache PDFBox)来解析 PDF 文件内容,并通过分析文本或线条来判断 PDF 是否包含表格。然后使用 Spring Boot 提供的 REST API 来实现上传…...

嵌入式S3C2440:控制LED灯
发光二极管接口(左端)应为低电平 以LED1为例 LED1的接口为GPB5 void led_init(void) {//配置GPB5功能为输出GPBCON & ~(0x3 << 10);GPBCON | (0x1 << 10); //使GPB5输出高电平(关灯)GPBDAT | (1 << 5); }void led_on(void) {GPB…...

算法:区间dp
文章目录 一、适用场景二、基本思路步骤时间复杂度: 三、例题 区间动态规划(Interval DP)是一种用于解决某些需要处理区间或子段问题的动态规划方法,特别适合于问题的解可以通过子区间的解进行组合的情况。该方法的核心思想是在子…...

【14.1运行版】C++俄罗斯方块-实现欢迎界面
实现欢迎界面 #include <stdio.h>//C语言形式的输入输出 #include <graphics.h>//图形库的头文件//实现欢迎界面 void welcome(void);int main(void) {welcome();//colsegraph();return 0; }void welcome(void) {//初始化画布initgraph(550, 660);//设置窗口标题H…...

数据分析:R语言计算XGBoost线性回归模型的SHAP值
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍SHAP用途计算方法:应用加载R包导入数据数据预处理函数模型介绍 SHAP(SHapley Additive exPlanations)值是一种解释机器学习模型预测的方法。它基于博弈论中的Shapley值概念,…...

SprinBoot+Vue图书馆预约与占座微信小程序的设计与实现
目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue3.6 uniapp代码 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍:CSDN认证博客专家,CSDN平…...

云计算之大数据(上)
目录 一、Elasticsearch 1.1 产品组件 1.1.1 X-Pack 1.1.2 Beats数据采集中心 1.1.3 Logstash 1.1.4 Kibana 1.2 架构特性 1.2.1 性能 1.2.2 安全性 1.2.3 可用性 1.2.4 可扩展性 1.2.5 可维护性 1.2.6 国际化 1.3 综合检索分析 1.4 全观测 1.5 大数据检索加速…...

交友系统“陌陌”全方位解析
交友系统在现代社会中扮演着越来越重要的角色,尤其是随着互联网技术的发展,各种交友软件层出不穷。陌陌作为其中的佼佼者,其全方位解析对于理解交友系统的商业开发至关重要。 陌陌的核心功能是提供基于地理位置的社交服务,用户可…...
Android 删除开机动画
Android 删除开机动画 两种方法都是将debug.sf.nobootanimation的值改为属性1 第一种: frameworks/base/cmds/bootanimation/BootAnimationUtil.cpp bool bootAnimationDisabled() {char value[PROPERTY_VALUE_MAX]; // property_get("debug.sf.nobootani…...

我用 GPT 学占星
最近对占星赶兴趣,但是看到星盘中好多名词,不懂是什么意思?所以直接问 gpt , 发现回答的真的很棒🎉 ! 假如我想知道各个状态的具体是根据什么数据来显示的? 分分钟解决了我的问题; 我…...

028、架构_高可用_主从原理
MySQL半同步复制概览 MySQL主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致。主从复制的基本过程如下图所示: 主从复制的完成通过以下三个进程实现的主库 binary log dump 线程:当从库连接主库时,…...

【启明智显技术分享】探讨CAN总线相关知识以及Model3C 2路CAN的应用
一、 CAN总线相关知识 CAN总线概述 CAN(Controller Area Network)总线是一种高实时性、高可靠性和灵活性的串行通信协议,广泛应用于汽车和工业控制系统中。它由德国BOSCH公司开发,最高速率可达到1Mbps,具有强大的检错…...
【python学习】深度解析 Python 的 .env配置与最佳实践:温格高的环境变量配置之道
1. 文章简介 在开发和部署 Python 项目时,环境变量配置对于管理敏感信息如数据库连接字符串、API 密钥至关重要。本文将以温格高(2023年环法冠军)的项目为例,详细介绍如何通过 .env 文件简化环境配置,并分享多环境管理、Docker 集成等热门功能。我们还将覆盖一些小技巧和…...
计算机考研真题知识点——2021(B)
目录 2021(B) 一、选择题 二、判断题 三、简答题 四、综合题 2021(B) 一、选择题 1、以下说法正确的是:C A、switch后面括号中放置的可以是值为任意类型的表达式。 B、continue和break均可以用在switch语句及循环语句中。 C、如果函数的返回类型与返回值类型不一…...
C#中ArrayList
ArrayList 1:位于System.Collections命名空间下, 2:ArrayList的容量可以根据需要自动扩充 3:只能是一维形式,数组可以是多维的 4:提供添加、删除、和插入某一范围元素的方法 三种构造方法 1) ArrayList list1 n…...
【MySQL】批量插入数据造数-存储过程
日常工作中可能有针对需要对某个表进行造数,如何批量插入呢? 可以使用存储过程循环结构。下面是一个存储过程以插入100条,while语句后的<控制循环次数。 concat是一个拼接语句,拼接后是test_1-100,这种也适用于ID/…...

基于Java+SpringBoot+Vue+MySQL的高校物品捐赠管理系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 基于SpringBootVue的高校物品捐赠管理系统【附源码文档】、…...
UNION和UNION ALL的区别
一、区别 去重功能 UNION会去除结果集中的重复行。UNION ALL不会去除重复行,它只是简单地将多个结果集合并在一起。 性能 UNION ALL通常比UNION性能更好,因为UNION需要进行去重操作,这会增加额外的计算开销。 二、具体例子 假设有两个表tab…...

简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...

ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...