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

【sonar】安装sonarQube免费社区版9.9【Linux】【docker】

文章目录

  • ⛺sonarQube 镜像容器
  • ⛺Linux 安装镜像
    • 🍁出现 Permission denied的异常
    • 🍁安装sonarQube 中文包
    • 🍁重启服务
  • ⛺代码上传到sonarQube扫描
    • 🍁java语言配置
    • 🍁配置 JS TS Php Go Python
      • ⛏️出现异常`sonar-scanner.bat: command not found`
      • ⛏️错误分析

⛺sonarQube 镜像容器

  • 老样子第一步还是打开镜像容器官网https://hub.docker.com
  • 搜索sonarqube
  • 官方推荐的挂载目录 我就按照官网的建议来配置启动命令
    在这里插入图片描述在这里插入图片描述

⛺Linux 安装镜像

# 我拉去的是最新 sonarqube:9.9.1-community
docker pull sonarqube:9.9.1-community

# 先创建需要挂载的目录
# 数据目录
mkdir -p /opt/sonarqube/data
# 日志目录
mkdir -p /opt/sonarqube/logs
# 插件目录
mkdir -p /opt/sonarqube/extensions
# 启动命令
docker run \
--name=sonarqube \
-p 50001:9000 \
--stop-timeout 3600 \
-v /opt/sonarqube/data:/opt/sonarqube/data \
-v /opt/sonarqube/logs:/opt/sonarqube/logs \
-v /opt/sonarqube/extensions:/opt/sonarqube/extensions \
-d sonarqube:9.9.1-community
# 可以使用 查看是否启动成功
docker ps

在这里插入图片描述

🍁出现 Permission denied的异常

在这里插入图片描述

chmod 777 /opt/sonarqube/data
# 日志目录
chmod 777 /opt/sonarqube/logs
# 插件目录
chmod 777 /opt/sonarqube/extensions
  • 命令解读:
    • docker run :创建并运行一个容器
    • –name : 给容器起一个名字,比如叫做sonarqube
    • -stop-timeout 3600SonarQube 实例将正常停止,等待任何正在进行的任务完成。等待正在进行的任务完成可能会花费大量时间,而 Docker 在停止时默认情况下不会预期这一时间。为了避免 SonarQube 实例在 10 秒后被 Docker 守护进程杀死,最好配置一个超时来停止容器–stop-timeout。
    • -v :绑定数据卷
    • -p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
    • -d:后台运行容器
      -sonarqube:镜像名称,例如sonarqube 后面跟是版本号 你可以使用 docker images命令查看
  • 默认情况下,容器是隔离环境,我们直接访问宿主机的9000 端口,肯定访问不到容器中的sonarqube 。
  • 现在,将容器的50001与宿主机的9000 关联起来,当我们访问宿主机的50001端口时,就会被映射到容器的9000 ,这样就能访问到sonarqube 了

🍁安装sonarQube 中文包

  • 汉化包下载地址:https://github.com/SonarQubeCommunity/sonar-l10n-zh
  • 下载不了的可以用这个地址下载
    https://www.aliyundrive.com/s/d9bsRAKFGNF
    提取码: 4b2o
    在这里插入图片描述
    在这里插入图片描述 然后将sonar-l10n-zh-plugin-10.1.jar 上传到/opt/sonarqube/extensions/plugins 目录下。重启后,中文插件就可以生效了。没有下载过插件的小伙,自己要创建一个目录mkdir plugins
    在这里插入图片描述

这里一定要注意给问价夹和文件授权,让启动的时候无妨访问 我这里图省事都是权限开到最大

chmod 777 plugins
chmod 777 sonar-l10n-zh-plugin-10.1.jar

🍁重启服务

docker restart sonarqube
  • 重启服务再去访问,这里可以看到已经全部变成中文了,目前这个中文包最高支持sonarQube10.1
    在这里插入图片描述
    在这里插入图片描述

⛺代码上传到sonarQube扫描

🍁java语言配置

  • 先去创建一个全局令牌
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 创建一个代码扫描的项目
    > 在这里插入图片描述
  • 填写项目名称
    在这里插入图片描述在这里插入图片描述
  • 填写我们刚才生成令牌在这里插入图片描述
  • 复制到项目里面执行就可以了在这里插入图片描述

🍁配置 JS TS Php Go Python

  • 前面的步骤是一样的
    在这里插入图片描述
    在这里插入图片描述
  • 配置一下环境变量
    在这里插入图片描述

⛏️出现异常sonar-scanner.bat: command not found

在这里插入图片描述

⛏️错误分析

  • 我们来看下它的执行文件里面写了啥
    在这里插入图片描述
  • 可以看到它都SONAR_SCANNER_HOME下面jre,那就简单了么,配置一个 SONAR_SCANNER_HOME 就可以了
    在这里插入图片描述
    在这里插入图片描述
    把path变量里面改成 %SONAR_SCANNER_HOME%\bin 就可以了
    在这里插入图片描述
  • 最后到你的项目目录下执行
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

相关文章:

【sonar】安装sonarQube免费社区版9.9【Linux】【docker】

文章目录 ⛺sonarQube 镜像容器⛺Linux 安装镜像🍁出现 Permission denied的异常🍁安装sonarQube 中文包🍁重启服务 ⛺代码上传到sonarQube扫描🍁java语言配置🍁配置 JS TS Php Go Python⛏️出现异常sonar-scanner.ba…...

MySQL基本语法总结

创建数据库 create database 数据库名; -- 字符集要看mysql 版本, 5.7 Latin, 8.0 utf8 create database 数据库名 character set ‘utf8’;-- 指定数据库的字符集 create database IF NOT EXISTS 数据库名 character se…...

锐捷VSU技术理论与实验

目录 VSU涉及的相关基础概念 VSU的2种工作模式 VSU的3种设备角色 VSU的4种设备状态 VSU的分裂与合并 VSU建立过程 双主检测 VSU报文转发原理 VSU命令配置 配置VSU 配置双主检测 VSU涉及的相关基础概念 域编号(Domain ID) Domain ID是VSU的标…...

深入探索Linux文件链接技术:ln命令的妙用

当谈及 Linux 系统中的文件管理和链接技术,ln 命令是一个不可或缺的工具。ln 命令用于创建硬链接和软链接,它在 Linux 文件系统中发挥着重要作用,为用户提供了更大的灵活性和组织能力。在本文中,我们将深入探讨 ln 命令是什么&…...

electron项目开发环境搭建

由于最近需要做一款跨平台的桌面应用,所以选择使用electron来作为开发的框架,下面说一下如何搭建一个简单的electron项目: 一、准备工作 安装git:下载git | 官网 安装node:下载 | Node.js 中文网 安装npm/cnpm:npm …...

Spring 知识点

Spring 1.1 Spring 简介 1.1.1 Spring 概念 Spring是一个轻量级Java开发框架,最早有Rod Johnson创建为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。使现有的技术更加容易使…...

目标跟踪与检测后进行 OpenCV 人脸识别 ,马赛克

文章大纲 简介模型下载地址ONNX 静态与动态 参数OpenCV 中支持的 人脸检测、识别Face detection 人脸检测YuNetFace recognition 人脸识别sFace目标检测,跟踪 后的人脸模糊问题汇总不支持动态输入的问题参考文献与学习路径简介 OpenCV 4.5.4版本收录了一个基于深度学习神经网…...

持有PMP证书,可申请CSPM证书!

一,CSPM介绍 CSPM的全称是:项目管理专业人员能力评价,是我们国内的“PMP”,是我们中国人自己的项目管理专业人士评价指南,符合中国国情且符合中国未来发展的项目管理专业人员能力评价标准。 2022年10月12日发布实施了…...

linux自定义网络访问规则

1.更改防火墙默认区域为trusted firewall-cmd --set-default-zonetrusted 2.新建一个zone,将想要访问本机80端口的ip,如:192.168.3.99 ,添加的这个zone中,同时在这个zone中放行80端口。 firewall-cmd --permanent --ne…...

247 个经典实用有趣的 Python 实例附源码

今天给大家整理了 247 个经典实用有趣的 Python 实例,185 页代码齐全可复制 pdf,几乎涵盖了 Python 各个方面的知识点,即可以帮助小白快速全面的学习 Python,也可以让老手通过实战练习来查缺补漏。 福利:文末有chat-g…...

动手学深度学习Pytorch 4.4练习

1.这个多项式回归问题可以准确地解出吗?提⽰:使⽤线性代数。 可以,把多项式问题,用matlab的str2sym表示出来,再用solve求解。 2.考虑多项式的模型选择。 1. 绘制训练损失与模型复杂度(多项式的阶数)的关系…...

【计算机视觉 | Kaggle】飞机凝结轨迹识别 Baseline 分享和解读(含源代码)

文章目录 一、导读二、比赛背景三、比赛任务四、比赛数据五、评价指标六、Baseline6.1 Training part6.2 Submission part 一、导读 比赛名称:Google Research - Identify Contrails to Reduce Global Warming https://www.kaggle.com/competitions/google-researc…...

ThinkPHP文件上传:简便安全的解决方案

在现代Web应用程序中,文件上传是一项常见而重要的功能。ThinkPHP是一种流行的PHP开发框架,提供了便捷而安全的文件上传解决方案。本文将介绍ThinkPHP框架中的文件上传功能,并探讨如何使用它来实现安全可靠的文件上传功能。 一、ThinkPHP文件…...

torch.multiprocessing

文章目录 张量共享torch.multiprocessing.spawnmultiprocessing.Pool与torch.multiprocessing.Pool阻塞非阻塞map阻塞非阻塞 starmap torch.multiprocessing是具有额外功能的multiprocessing,其 API 与multiprocessing完全兼容,因此我们可以将其用作直接…...

解决本地代码commit后发现远程分支被更新的烦恼!

解决本地代码commit后远程分支更新的烦恼! 在进行代码开发过程中,当我们准备将本地代码推送到远程分支时,有时会遇到远程分支已经被更新的情况。这给我们的开发工作带来了一些挑战,因为我们需要确保我们的修改与远程分支的更新保持…...

最新AI创作系统ChatGPT程序源码+详细搭建部署教程+微信公众号版+H5源码/支持GPT4.0+GPT联网提问/支持ai绘画+MJ以图生图+思维导图生成!

使用Nestjs和Vue3框架技术,持续集成AI能力到系统! 新增 MJ 官方图片重新生成指令功能同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle)同步官方 Zoom 指令 单张图片无限缩放 Zoom out 2x | Zoom out 1.5x新增GPT联网提问功能、手机号注…...

910数据结构(2014年真题)

算法设计题 问题1 已知一个带头结点的单链表head,假设结点中的元素为整数,试编写算法:按递增次序输出单链表中各个结点的数据元素,并释放结点所占的存储空间。要求:(1)用文字给出你的算法思想;(2)不允许使…...

Idea创建maven管理的web项目

如果你想在项目中添加一个传统的 src 目录来存放源代码,可以按照以下步骤操作: 1. 在项目视图中,右键单击项目名称,选择 “New” -> “Directory”。 2. 在弹出的对话框中,输入目录名称为 “src”,然后…...

Java并发编程(一)多线程基础概念

概述 多线程技术:基于软件或者硬件实现多个线程并发执行的技术 线程可以理解为轻量级进程,切换开销远远小于进程 在多核CPU的计算机下,使用多线程可以更好的利用计算机资源从而提高计算机利用率和效率来应对现如今的高并发网络环境 并发编程…...

D. Strong Vertices - 思维 + 二分

分析: 首先找到边的指向很容易,但是暴力是o(n2),超时,可以将给定的式子变形,au - av > bu - bv即au - bu > av - bv,可以将两个数组转变为一个数组中的任意两个值之间的关系,因…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...

GitHub 趋势日报 (2025年06月08日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...

深度学习水论文:mamba+图像增强

🧀当前视觉领域对高效长序列建模需求激增,对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模,以及动态计算优势,在图像质量提升和细节恢复方面有难以替代的作用。 🧀因此短时间内,就有不…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四&#xff…...