Linux部署Sonarqube+Gogs+Jenkins(一)
Linux部署Sonarqube+Gogs+Jenkins
- 一、1.Linux安装JDK11环境
- 1. 本地进行上传
- 2. 进入到/usr/java目录,并且进行解压
- 3. 配置文件/etc/profile,配置环境变量
- 4.让对应的配置文件生效
- 5. 验证
- 二、Linux安装Python环境
- 三、Linux安装Jenkins环境
- 1、/usr目录下创建jenkins目录
- 2、将jenkins.war包上传到/usr/jenkins目录下
- 3、后台运行jenkins
- 4、特别注意:云服务器需要打开8080端口
- 5、访问jenkins
- 5.1、复制路径将密码粘贴,点击继续
- 四、Linux安装gogs和Git应用
- 1、先进行git的安装
- 2、上传
- 3、解压
- 4、启动
- 5、问题解决
- 5.1、查看3000端口被那个应用程序被占用了
- 5.2、查看3000端口占用的进程PID
- 5.3、杀死进程
- 5.4、再次启动gogs服务
- 5.5、验证页面成功打开
- 五、Linux安装SonarQube
- 1、SonarQube工具介绍
- 2、SonarQube环境安装
- 第一步:新建⽤户与组
- 第二步:上传sonarqube安装包(zip⽂件)所以需要安装⼀个unzip 进⾏解压
- 第三步:移动文件夹到非 ~ 下,并设置⽤户组课操作权限( -R 后面跟的是组名)
- 特别注意:云服务器中需要加sudo,否则权限不够,启动sonarqube失败
- 第四步:启动sonar,先切换⽤户再运⾏
- 特别注意:Linux系统切换用户后只显示$问题
- 第五步:访问:http://IP:9000/ ,并且进行汉化。
一、1.Linux安装JDK11环境
需要下载对应的jdk的包 – jdk 11
scp 本地文件路径 用户名@ip:要保存路径
1. 本地进行上传
或者通过xftp软件传输到服务器中
scp jdk11.0.18_linuxx64_bin.tar.gz root@192.168.31.178:/usr/java
2. 进入到/usr/java目录,并且进行解压
cd /usr/java
tar -zxvf jdk11.0.18_linuxx64_bin.tar.gz
3. 配置文件/etc/profile,配置环境变量
a. 添加一个环境变量:JAVA_HOME – java的路径
b. 添加一个环境变量:CLASSPATH
c. 将JAVA可执行文件添加到PATH当中
d. 进行保存:esc ————>:wq
export JAVA_HOME=/usr/java/jdk-11.0.18
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
4.让对应的配置文件生效
source /etc/profile
5. 验证
java -version
二、Linux安装Python环境
https://blog.csdn.net/YZL40514131/article/details/121583650
三、Linux安装Jenkins环境
1、/usr目录下创建jenkins目录
2、将jenkins.war包上传到/usr/jenkins目录下
root@hecs-213321:/usr/jenkins# ls
jenkins.log jenkins.war
3、后台运行jenkins
nohup java -jar jenkins.war jenkins.war>jenkins.log 2>&1&
nohup java -jar jenkins.war jenkins.war>jenkins.log 2>&1&
4、特别注意:云服务器需要打开8080端口
5、访问jenkins
http://114.115.130.103:8080/
5.1、复制路径将密码粘贴,点击继续
四、Linux安装gogs和Git应用
1、先进行git的安装
注意:必须先安装Git
安装非常简单:yum install git -y
2、上传
3、解压
tar -zxvf gogs_0.13.0_linux_amd64.tar.gz
tar -zxvf gogs_0.13.0_linux_amd64.tar.gz
4、启动
nohup ./gogs web>gogs.log 2>&1&
5、问题解决
gogs默认使用的是3000端口,由于我的云服务器3000端口已经被占用了,所以访问不了页面。
5.1、查看3000端口被那个应用程序被占用了
5.2、查看3000端口占用的进程PID
root@hecs-213321:~/installation_package/gogs/gogs# lsof -i:3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
grafana-s 3481095 root 8u IPv6 16700086 0t0 TCP *:3000 (LISTEN)
grafana-s 3481095 root 16u IPv6 33473034 0t0 TCP hecs-213321:3000->111.196.125.31:64485 (ESTABLISHED)
5.3、杀死进程
root@hecs-213321:~/installation_package/gogs/gogs# kill -9 3481095
5.4、再次启动gogs服务
root@hecs-213321:~/installation_package/gogs/gogs# nohup ./gogs web>gogs.log 2>&1&
[1] 2683618
5.5、验证页面成功打开
五、Linux安装SonarQube
1、SonarQube工具介绍
提交代码—通过Sonarqube进行扫描(前置条件:jdk必须是11)
SonarQube属于静态测试和动态测试中的静态测试
白盒测试和黑盒测试中的白盒测试
SonarQube分为:
介绍工下SonarQube工具:(分为两个模块)
1.分析器(Web页面,是一个可视化的平台)——SonarQube
2.扫描器(工具–对代码进行扫描之后提交到分析器上去)——SonarScanner
2、SonarQube环境安装
注意:
1、sonar不能用root账号,所以就存在新建账号,并且赋权限操作
2、sonar是一个zip文件,需要安装unzip,apt-get install zip
第一步:新建⽤户与组
# 进入到主目录
cd ~
# 创建一个组:sonarqube
groupadd sonarqube
# 语法:useradd 用户名 -g 组名 -p 密码
useradd sonarqube -g sonarqube -p sonarqube
第二步:上传sonarqube安装包(zip⽂件)所以需要安装⼀个unzip 进⾏解压
# 上传文件
scp sonarqube-9.7.0.61563.zip root@192.168.2.18:~/
# 安装unzip
yum install unzip -y
# 解压文件到当前路径下
unzip sonarqube-9.7.0.61563.zip -d ./
第三步:移动文件夹到非 ~ 下,并设置⽤户组课操作权限( -R 后面跟的是组名)
# 移动文件夹到/opt目录下
mv sonarqube-9.7.0.61563 /opt
# 进入到opt的文件路径,并且赋予权限
cd /opt
# chown -R sonarqube sonar安装包解压后的路径;用于更改文件或目录的所有者
chown -R sonarqube sonarqube-9.7.0.61563/
# chgrp -R sonarqube sonar安装包解压后的路径;用于更改文件或目录的所属组
chgrp -R sonarqube sonarqube-9.7.0.61563/
# chown -R sonarqube JAVA_HOME路径;用于更改文件或目录的所有者
chown -R sonarqube /usr/jdk
# chgrp -R sonarqube JAVA_HOME路径;用于更改文件或目录的所属组
chgrp -R sonarqube /usr/jdk
特别注意:云服务器中需要加sudo,否则权限不够,启动sonarqube失败
root@hecs-213321:/opt# sudo chown -R sonarqube6 sonarqube-9.7.0.61563
root@hecs-213321:/opt# sudo chgrp -R sonarqube6 sonarqube-9.7.0.61563
root@hecs-213321:/opt# sudo chown -R sonarqube6 /usr/java/jdk-11.0.18/bin/java
root@hecs-213321:/opt# sudo chgrp -R sonarqube6 /usr/java/jdk-11.0.18/bin/java
报错日志截图
第四步:启动sonar,先切换⽤户再运⾏
# 切换用户
su sonarqube
# 启动(sonar本身就是后台运行,无需其它操作) 华
./sonarqube-9.7.0.61563/bin/linux-x86-64/sonar.sh start
特别注意:Linux系统切换用户后只显示$问题
问题描述:Linux系统切换用户后只显示$问题:
root@hecs-213321:~# clear
root@hecs-213321:~# su sonarqube
$
原因分析:
证明默认的shell为/bin/sh,而不是/bin/bash。
l改成/bin/bash,即可解决问题。创建用户的时候未指定shell类型。
第五步:访问:http://IP:9000/ ,并且进行汉化。
相关文章:
Linux部署Sonarqube+Gogs+Jenkins(一)
Linux部署SonarqubeGogsJenkins 一、1.Linux安装JDK11环境1. 本地进行上传2. 进入到/usr/java目录,并且进行解压3. 配置文件/etc/profile,配置环境变量4.让对应的配置文件生效5. 验证 二、Linux安装Python环境三、Linux安装Jenkins环境1、/usr目录下创建…...
程序员开发技术整理(持续整理中)
前端技术: vue-前端框架element-前端框架bootstrap-前端框架echarts-图标组件 C#后端技术: webservice:soap架构:简单的通信协议,用于服务通信ORM框架:对象关系映射,如EF:对象实体…...
Java并查集详解(附Leetcode 547.省份数量讲解)
一、并查集概念 并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题。 并查集的思想是用一个数组表示了整片森林(parent),树的根节点唯一标识了一个集合,我们只要找到了某个元素的的树根,…...
【MySQL】DQL-基础查询-语句&演示(查询多个字段 / 所有字段/并设置别名/去重)
前言 大家好吖,欢迎来到 YY 滴MySQL系列 ,热烈欢迎! 本章主要内容面向接触过C Linux的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的…...
更新一条SQL的执行流程
在 MySQL中,条更新 SQL 语句执行的过程通常包括以下主要步骤: 1.客户端发送请求: 客户端应用程序(如数据库连接器或应用程序)构建一条 UPDATE SQL 语句,并将其发送到 MySOL 服务器端。 2.查询解析和优化: MySQL 服务器接收到请求后,先进行语法…...
深入理解nginx mp4流媒体模块[上]
目录 1. 引言2. 配置3. 源码分析3.1 配置指令3.1.1 mp43.1.2 mp4_buffer_size3.1.3 mp4_max_buffer_size3.1.4 mp4_start_key_frame 3.2 MP4的请求处理过程3.2.1 预处理3.2.2 找到并打开本地mp4文件3.2.3 解析请求参数3.2.4 MP4文件的处理 深入理解nginx mp4流媒体模块[上] 深入…...
Go 之 Gin 框架
Gin 是一个 Go (Golang) 编写的轻量级 web 框架,运行速度非常快,擅长 Api 接口的高并发,如果项目的规模不大,业务相对简单,这个时候我们也推荐您使用 Gin,特别适合微服务框架。 简单路由配置 package mai…...
vue3+threejs新手从零开发卡牌游戏(二十一):添加战斗与生命值关联逻辑
首先将双方玩家的HP存入store中,stores/common.ts代码如下: import { ref, computed } from vue import { defineStore } from piniaexport const useCommonStore defineStore(common, () > {const _font ref() // 字体const p1HP ref(4000) // 己…...
Linux内核err.h文件分析
在阅读和编写内核相关的代码时,经常会看到IS_ERR、ERR_PTR等函数。这些函数在内核头文件的err.h中。以我服务器的代码为例,内核版本为5.15。 这个文件的代码如下: /* SPDX-License-Identifier: GPL-2.0 */ #ifndef _LINUX_ERR_H #define _L…...
Qt 富文本处理 (字体颜色大小加粗等)
Qt中支持HTML的控件有textEdit 、label 、textBrowser 。 接口:setHtml("Qt"); toHtml(). 文本样式设置 : 可分字设置 ,主要使用QTextCharFormat类进行文本样式设置。 示例: QTextCharFormat fmt; //粗体 fmt.setFontWeight…...
消息队列的七种经典应用场景
在笔者心中,消息队列,缓存,分库分表是高并发解决方案三剑客。 在职业生涯中,笔者曾经使用过 ActiveMQ 、RabbitMQ 、Kafka 、RocketMQ 这些知名的消息队列 。 这篇文章,笔者结合自己的真实经历,和大家分享…...
uniapp 微信小程序 canvas 手写板文字重复倾斜水印
核心逻辑 先将坐标系中心点通过ctx.translate(canvasw / 2, canvash / 2) 平移到canvas 中心,再旋转设置水印 假如不 translate 直接旋转,则此时的旋转中心为左上角原点,此时旋转示意如图所示 当translate到中心点之后再旋转,此…...
JavaScript如何制作轮播图
在JavaScript中实现轮播图可以通过多种方式,但最常见的方式是使用数组来存储图片,然后使用setInterval函数定期更改显示的图片。下面是一个简单的例子: 首先,你需要在HTML中设置一些用于显示图片的<img>标签,以…...
【面试经典150 | 动态规划】零钱兑换
文章目录 Tag题目来源解题思路方法一:动态规划 写在最后 Tag 【动态规划】【数组】 题目来源 322. 零钱兑换 解题思路 方法一:动态规划 定义状态 dp[i] 表示凑成总金额的最少硬币个数。 状态转移 从小到大枚举要凑成的金额 i,如果当前…...
什么是防火墙,部署防火墙有什么好处?
与我们的房屋没有围墙或界限墙一样,没有防护措施的计算机和网络将容易受到黑客的入侵,这将使我们的网络处于巨大的风险之中。因此,就像围墙保护我们的房屋一样,虚拟墙也可以保护和安全我们的设备,使入侵者无法轻易进入…...
学习鸿蒙基础(10)
目录 一、轮播组件 Swiper 二、列表-List 1、简单的List 2、嵌套的List 三、Tabs容器组件 1、系统自带tabs案例 2、自定义导航栏: 一、轮播组件 Swiper Entry Component struct PageSwiper {State message: string Hello Worldprivate SwCon: SwiperControl…...
阿里云对象存储OSS入门
阅读目录 一、阿里云OSS的使用 1、OSS是什么?2、OSS的使用 二、阿里云OSS的使用三、图床的搭建四:图床绑定阿里云OSS 编写不易,如果我的文章对你有帮助的话,麻烦小伙伴还帮忙点个赞再走! 如果有小伙伴觉得写的啰嗦&a…...
[幻灯片]软件需求设计方法学全程实例剖析-03-业务用例图和业务序列图
DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 pdf已上传至本号的CSDN资源,或到以下地址下载: http://umlchina.com/training/umlchina_03_bm.pdf...
ctfshow-web入门-xxe
什么是xxe? XXE,全称XML External Entity Injection,即XML外部实体注入。这是一种针对应用程序解析XML输入类型的攻击。当包含对外部实体的引用的XML输入被弱配置的XML解析器处理时,就会发生这种攻击。这种攻击通过构造恶意内容&…...
Docker数据卷挂载
一、容器与数据耦合的问题: 数据卷是虚拟的,不真实存在的,它指向文件中的文件夹 ,属主机文件系统通过数据卷和容器数据进行联系,你改变我也改变。 解决办法: 对宿主机文件系统内的文件进行修改,会立刻反应…...
QT_day4:对话框
1、完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和密码不匹配&…...
矢量数据库:连接人工智能应用程序的数据复杂性与可用性的桥梁
关注我的公众号:Halo咯咯 简介 矢量数据库是一种专门设计的数据库,专注于高效地存储、管理和操作矢量数据。与传统数据库处理标量值(如数字、字符串、日期)不同,矢量数据库针对的是那些表现为多维数据点的向量…...
docker:can’t create unix socket /var/run/docker.sock: is a directory
docker:can’t create unix socket /var/run/docker.sock: is a directory 原因:docker.sock不能创建 解决方式: rm -rf /var/run/docker.sock 然后重新启动docker Docker是一种相对使用较简单的容器,我们可以通过以下几种方式获取信息&…...
Qt 图形视图 /图形视图框架坐标系统的设计理念和使用方法
文章目录 概述Qt 坐标系统图形视图的渲染过程Item图形项坐标系Scene场景坐标系View视图坐标系map坐标映射场景坐标转项坐标视图坐标转图形项坐标图形项之间的坐标转换 其他 概述 The Graphics View Coordinate System 图形视图坐标系统是Qt图形视图框架的重要组成部分…...
视频号小店类目资质如何申请?新手看一遍就懂了!
我是电商珠珠 大家在视频号小店后台新增商品的时候,需要先完成类目资质的申请,通过后才可以上架相关商品。 而类目资质分为普通类目和特殊类目,如果你所上架的商品属于开放类目,那么就去按照普通类目资质去申请。 如果是定向准…...
整合SpringSecurity+JWT实现登录认证
一、关于 SpringSecurity 在 Spring Boot 出现之前,SpringSecurity 的使用场景是被另外一个安全管理框架 Shiro 牢牢霸占的,因为相对于 SpringSecurity 来说,SSM 中整合 Shiro 更加轻量级。Spring Boot 出现后,使这一情况情况大有…...
C# Onnx Yolov9 Detect 物体检测
目录 介绍 效果 项目 模型信息 代码 下载 C# Onnx Yolov9 Detect 物体检测 介绍 yolov9 github地址:https://github.com/WongKinYiu/yolov9 Implementation of paper - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information…...
Flink SQL 基于Update流出现空值无法过滤问题
问题背景 问题描述 基于Flink-CDC ,Flink SQL的实时计算作业在运行一段时间后,突然发现插入数据库的计算结果发生部分主键属性发生失败,导致后续计算结果无法插入, 超过失败次数失败的情况问题报错 Caused by: java.sql.BatchUp…...
git-怎样把连续的多个commit合并成一个?
Git怎样把连续的多个commit合并成一个? Git怎样把连续的多个commit合并成一个? 参考URL: https://www.jianshu.com/p/5b4054b5b29e 查看git日志 git log --graph比如下图的commit 历史,想要把bai “Second change” 和 “Third change” 这…...
2024年2月游戏手柄线上电商(京东天猫淘宝)综合热销排行榜
鲸参谋监测的线上电商(京东天猫淘宝)游戏手柄品牌销售数据已出炉!2月游戏手柄销售数据呈现出强劲的增长势头。 根据鲸参谋数据显示,今年2月游戏手柄月销售量累计约43万件,同比去年上涨了78%;销售额累计达1…...
网站被百度蜘蛛爬死了/湖人排名最新
预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会…...
企业网站源码生成器/新手小白怎么做跨境电商
一:挂载 1) fdisk -l |grep sd 查看分区情况 或者fdisk -l 2) mkdir -p /data/disk1 创建数据存储目录 mkdir -p /data/disk2 mkdir -p /data/disk3 ...... 3) mkfs.xfs /dev/sdb 格式化sdb磁盘 mkfs.xfs /dev/sdc 格式化sdc磁盘 mkfs…...
自己做的网站很卡/网络营销的特点包括
原文链接:http://blog.csdn.net/maozefa/archive/2008/09/08/2896752.aspx无论是用何种语言,只要使用过Windows的GDI的人对ColorMatrix都不陌生,我的BLOG文章中也多次提到过,并在《GDI for VCL基础 -- 颜色调整矩阵ColorMatrix详解…...
个人网站备案材料填写/广州竞价托管代运营
一、变量初始化以及默认值设置1.$var与${var}:这两种写法本质上是一样的,但$var有时候会产生混淆,而${var}一般不会,可以把变量和字符串组合起来使用,比如name${first}-on-${last}2.${var-default}与${var:-default}&a…...
网站网络推广优化/网站优化推广的方法
总体设计是站在全局角度,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从而用较低的成本开发出较高质量的软件系统。(本文部分摘自《软件工程导论(第六版࿰…...
wordpress 插件数据库/广告投放的方式有哪些
github只是为我们提供了一个存储的功能,我们也可以准备一个服务器(当然,能联网是前提了),将版本库保存到服务器上。 本文以github为例进行实验。 1. 在github上创建一个仓库 这个非常简单,参考http://blo…...