一,拉取相关镜像并运行

# 拉取sonarqube镜像
docker pull sonarqube:9.1.0-community

在运行之前要提前安装postgres并允许,新建数据库名为sonar的数据库

Docker安装postgres教程

docker run -d --name sonarqube --restart=always \
-p 19000:9000 \
-e sonar.jdbc.username=sonar \
-e sonar.jdbc.password=sonar \
-e sonar.jdbc.url=jdbc:postgresql://<IP>:15432/sonar \
-v /data/sonarqube/extensions:/opt/sonarqube/extensions \
-v /data/sonarqube/data:/opt/sonarqube/data \
sonarqube:9.1.0-community

二,检查是否运行成功

如果运行失败

#查看日志
docker logs -f sonarqube

如果报错信息如上

1、检查系统vm.max_map_count设置值

sysctl -a | grep vm.max_map_count
#如果显示为vm.max_map_count = 65536
#修改
sysctl -w vm.max_map_count=262144
#再次查看是否为vm.max_map_count = 262144
sysctl -a | grep vm.max_map_count
#重尝试启动启Sonarqube
docker start sonarqube
#docker ps 查看是否运行成功
docker ps

三,登录并安装中文插件

输入ip:19000进入主界面

登陆后修改密码,随后安装中文插件,如图是汉化后的

但是不出意外的话下载时会报错,查看日志会发现是连接超时,这时需要手动下载并上传到Sonar容器

中文插件下载地址https://github.com/xuhuisheng/sonar-l10n-zh/releases

根据下表找出对应的sonar版本所需要的汉化包

然后把Jar包上传到宿主机的某个文件目录下,我这边选的/home/

#通过docker cp 把jar包上传到sonar容器中
docker cp sonar-l10n-zh-plugin-9.1.jar sonarqube:/opt/sonarqube/extensions/plugins/
#如果报错没有/plugins/目录,就需要进入容器手动创建
docker exec -it sonarqube bash
mkdir -p /opt/sonarqube/extensions/plugins/
#退出容器后在执行
docker cp sonar-l10n-zh-plugin-9.1.jar sonarqube:/opt/sonarqube/extensions/plugins/
#检查是否拷贝成功
docker exec -it sonarqube bash
ls /opt/sonarqube/extensions/plugins/

#docker重启sonarqube
docker restart sonarqube

进入主界面查看是否汉化成功

Sonarqube安装(Docker)的更多相关文章

  1. 从零开始针对 .NET 应用的 DevOps 运营实践 - Jenkins & SonarQube 安装配置

    一.Overview 继续 DevOps 实施的相关内容,在上一篇的博客中,完成了对于工具链中使用到的软件所需的运行环境的配置,在这一篇的博客中,将聚焦于我们使用到的两个主要的软件:Jenkins 与 ...

  2. CentOS7安装docker

    1. 查看系统版本 $ cat /etc/redhat-release   2. 安装docker $  yum install docker 3.检查安装是否成功$ docker version 若 ...

  3. CentOS 7 安装 Docker

    CentOS 7 安装 Docker 这里介绍 ContOS 7 的安装 docker V1.2+,包括阿里云加速 docker 镜像下载的设置,这对提升使用 docker 体验至关重要.其他系统安装 ...

  4. ubuntu 16.04安装docker

    环境 操作系统:ubuntu 16.04 64位,默认安装 准备 1. 添加GPG key: $ sudo apt-key adv --keyserver hkp://p80.pool.sks-key ...

  5. 如何在mac上安装docker[记录自己在mac上安装docker的经历]

    0.引子 最近入手了一台mac笔记本,想在本地安装docker. 1.找安装文档. 文档地址:http://www.widuu.com/chinese_docker/installation/mac. ...

  6. Ubuntu 14.04 LTS 安装Docker

    Docker官方是有很详细的安装文档(https://docs.docker.com/engine/installation/ubuntulinux/),这里做了一个Ubuntu 14.04 LTS中 ...

  7. Redhat/Ubuntu/Windows下安装Docker

    Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...

  8. 手动编译安装docker环境,以及偶尔出现的bug

    总结安装过程如下: 前提:安装git,go,make, docker(docker中编译docker) git clone https://git@github.com/docker/docker c ...

  9. openSUSE4.1 安装docker

    安装完Leap后,通过YaST-Software Management安装docker. 安装 docker . yast2-docker. ruby2.1-rubygem-docker-api  . ...

  10. Ubuntu下安装Docker

    1. 安装前先检查系统对docker的支持,尽可能安装高版本的系统,比如Ubuntu14.04等,安装前可以先检查系统信息. Docker需要64位机器,需要运行在3.8以上的内核上,需要操作系统支持 ...

随机推荐

  1. Linux 系统用户文件缺失造成“bash-4.2$”错误的解决办法

    一.问题出现的原因 造成这个现象的原因是因为用户文件夹下的bash_logout.bash_profile和bashrc这三个隐藏文件缺失 二.问题复现 现在删除这三个文件 此时问题出现了 三.问题解 ...

  2. django.core.exceptions.ImproperlyConfigured: Field name `tester_id` is not valid for model `WebCase`.

    代码: class WebCase(models.Model): id = models.AutoField(primary_key=True) casename = models.CharField ...

  3. CVE-2020-1938与CVE-2020-13935漏洞复现

    前言 最近在腾讯云上买了个服务器,准备用来学习.在安装了7.0.76的tomcat后,腾讯云提醒我存在两个漏洞,分别是CVE-2020-1938和CVE-2020-13935,在修复完漏洞后,准备复现 ...

  4. 前端使用工具规范commit信息

    前言 通过工具规范git提交信息也是工程化的一部分,在前端领域有一些工具为我们提供了相关功能,在这里做一下使用总结. commitlint commitlint是什么? 就像eslint用来检查js代 ...

  5. 洛谷P2196例题分析

    [NOIP1996 提高组] 挖地雷(原题) 题目描述 在一个地图上有\(N\)个地窖\((N \le 20)\),每个地窖中埋有一定数量的地雷.同时,给出地窖之间的连接路径.当地窖及其连接的数据给出 ...

  6. vue3学习第一天

    第一章 Options API与Composition API 重写双向绑定 vue2 基于Object.defineProperty()实现 vue3 基于Proxy proxy与Object.de ...

  7. 道长的算法笔记:KMP算法及其各种变体

    (一)如何优化暴力算法 Waiting... (二)KMP模板 KMP 算法的精髓在于 \(next\) 数组,\(next[i]=j\) 代表 \(p[1,j]=p[i-j+1,i]\),\(nex ...

  8. 05-Sed操作参数(II)

    1 Sed操作参数 1.1 q 参数q表示跳离sed [address1]q sed执行跳离动作的时候,会停止输入pattern space数据,同时停止数据送到标准输出文件. 例1 对于文件执行sc ...

  9. Linux c 获取U盘挂载路径

    思路: 1.执行df -h 找到 带mnt的行.将结果存入一个文件中. system("df -h |grep mnt >./extendevinfo.txt"); 也可以直 ...

  10. linux环境编程(2): 使用pipe完成进程间通信

    1. 写在前面 linux系统内核为上层应用程序提供了多种进程间通信(IPC)的手段,适用于不同的场景,有些解决进程间数据传递的问题,另一些则解决进程间的同步问题.对于同样一种IPC机制,又有不同的A ...