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

文章目录

  • ⛺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 就可以了
    在这里插入图片描述
  • 最后到你的项目目录下执行
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于 yolov8 的人体姿态评估

写在前面 工作中遇到,简单整理博文内容为使用预训练模型的一个预测 Demo测试图片来源与网络,如有侵权请告知理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停…

WIN大恒工业相机SDK开发

大恒工业相机SDK开发概览 一、开发环境搭建1、C# 环境配置(VS2019)2、C 环境配置(VS2019)3、python 环境配置(Pycharm) 二、相机二次开发流程三、相机相机属性参数配置四、图像采集单帧采集回调采集 注意事…

❤ npm不是内部或外部命令,也不是可运行的程序 或批处理文件

❤ npm不是内部或外部命令,也不是可运行的程序 或批处理文件 cmd或者终端用nvm 安装提示: npm不是内部或外部命令,也不是可运行的程序或批处理文件 原因(一) 提示这个问题,有可能是Node没有安装,也有可能是没有配置…

掌握Memory Profiler技巧:识别内存问题

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、如何使用四、页面说明4.1 Java 和 Kotlin 分配…

python批量检查folder中的文件是否符合要求

目录 问题描述: 问题解决: 问题描述: 最近在手动整理一些文档,要求是每一个folder以ID命名,每一个folder中存放三个内容(如下图)。如何实现批量检查每一个folder三个内容是否存在?…

Java 数据库时间返回前端显示错误(差8个小时)

文章目录 0 可能错误截图1 在属性上加自定义Json返回注释 JsonSerialize2 新建实体类 CustomDateTimeSerializer 0 可能错误截图 1 在属性上加自定义Json返回注释 JsonSerialize TableField(value "create_time")JsonSerialize(using CustomDateTimeSerializer.cla…

Could not autowire. There is more than one bean of ‘ xxx ‘ type.

1、问题描述 有时候我们使用Autowired,注入自己写的一个bean对象时,IDEA有报错提示There is more than one bean of CustomerRentFeign type. 虽然可以忽略,但是 也可以 彻底解决。 spring容器中 本身就有一个CustomerRentFeign类型的代理对…

解决github打不开的方法

解决github打不开的方法 本文参考文章:解决可ping通但无法访问github网站的问题 一、确定域名github.com的ip地址 进入网址 IP/服务器github.com的信息 - 站长工具 (chinaz.com),查看 ip 地址。 20.205.243.166 github.com二、确定域名github.global.…

Centos虚拟机忘记密码-修改密码

1.重启系统 2.在这个选择界面,按e建 3.找到如下位置,插入init/bin/sh 4.填写完成后按Ctrlx引导启动 5.输入mount -o remount, rw / (注意空格) 6.重置密码 出现以下为重置成功 7.执行touch /.autorelabel 8.退出exec /sbin/init 9.输入你的新密…

Redis 和 Mysql 如何保证数据一致性

项目场景: 一般情况下,Redis 用来实现应用和数据库之间读操作的缓存层,主要目的是减少数据库 IO,还可以提升数据的 IO 性能。 如下图所示,这是它的整体架构。 当应用程序需要去读取某个数据的时候,首先会先…

论文笔记:SUPERVISED CONTRASTIVE REGRESSION

2022arxiv的论文,没有中,但一作是P大图班本MIT博,可信度应该还是可以的 0 摘要 深度回归模型通常以端到端的方式进行学习,不明确尝试学习具有回归意识的表示。 它们的表示往往是分散的,未能捕捉回归任务的连续性质。…

恺英网络宣布:与华为鸿蒙系统展开合作,将开发多款手游

8月5日消息,恺英网络宣布旗下子公司盛和网络参加了华为开发者大会(HDC.Together)游戏服务论坛,并在华为鸿蒙生态游戏先锋合作启动仪式上进行了亮相。恺英网络表示,将逐步在HarmonyOS上开发多款游戏,利用Har…