Docker создает платформу для обнаружения кода SonarQube и обнаруживает проекты maven

Java

1. Введение

Хорошие привычки кодирования — это качества, которыми должен обладать хороший программист, но не всегда надежно полагаться на привычки и память людей для обеспечения качества кода. В компьютерной индустрии должно быть хорошо известно, что до тех пор, пока это искусственно, операционные риски будут. В этой статье объясняется, какDockerСоздайте платформу для обнаружения кодаSonarQube, и использовать его для обнаруженияmavenкод для проекта.

2 Докер устанавливает SonarQube

2.1 Установка

пройти черезDockerУстановка удобна и быстра, просто удалите контейнер и образ, когда они вам не нужны.

# 拉取Sonar镜像
docker pull sonarqube:8.3.1-community
# 运行实例
docker run --name sonarqube -p 9000:9000 -d sonarqube:8.3.1-community

Следующий визит:http://localhost:9000/Вот и все, пользователь и пароль администратора по умолчанию:admin/admin.

Выберите бесплатную версию для сообщества здесьCommunity,а такжеDeveloper,EnterpriseДругие платные версии имеют более мощные функции, а конкретные отличия заключаются в следующем:

Plan&Price

2.2 Укажите базу данных

Как правило, мы сами запускаем базу данных, напримерOracle,MySQLилиPostgreSQL. Связанную системную информацию можно найти вAdministration-SystemПросмотр, если мы не указываем, по умолчанию используется встроенныйH2база данных. Если вы хотите указать другие базы данных, вам нужно указать при запуске Docker:

-e SONARQUBE_JDBC_USERNAME="xxx" \
-e SONARQUBE_JDBC_PASSWORD="***" \
-e SONARQUBE_JDBC_URL="jdbc:mysql://xxx"

использоватьH2База данных имеет следующие ограничения:

Встроенные базы данных можно использовать только в тестовых сценариях. Встроенная база данных не может быть расширена или обновлена ​​до новой версии SonarQube, а также не может поддерживать миграцию ваших данных в другие механизмы баз данных.

Поэтому рекомендуется не использовать встроенные в реальной эксплуатации.H2база данных.

2.3 Вход в контейнер

Через команду:

$ docker exec -it 容器ID bash

bash-5.0# ls
COPYING        bin            conf           data           elasticsearch  extensions     lib            logs           temp           web
bash-5.0# 

может войтиSonarQubeконтейнер. в каталоге/opt/sonarqubeВы можете просматривать файлы конфигурации, подключаемые модули, файлы данных, файлы журналов и т. д. Фактическое использование должно быть сопоставлено с каталогом хоста, чтобы при перезапуске экземпляра данные и конфигурация оставались на месте.

2.4 Установите плагин

SonarQubeПредоставляет мощную функцию управления подключаемыми модулями, взяв в качестве примера китайский языковой пакет, чтобы объяснить, как устанавливать подключаемые модули:

Administration-Marketplace-Plugins, введите в поле поискаChineseВы можете выбрать установку.

Plugin

Когда статус отображается какInstall PendingПосле завершения установки плагина нажмитеRestart Serverвступить в силу.

3 Обнаружение кода через maven

3.1 Использование по учетной записи и паролю

уточнитьSonarQubeАдрес платформы и укажите имя пользователя и пароль, вы можете обнаружить код, конкретная команда выглядит следующим образом:

mvn clean verify sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=admin -Dsonar.password=admin

3.2 Использование токенов

Конечно, непосредственно с помощьюadminи раскрывать пароль не очень хорошая привычка, это можно сделать配置-权限-用户создать пользователя и создать токен.

Token

Скопируйте токен:9656c84090b2481db6ea97b6d14d87d546bff619.

Таким образом, вы можете работать через токен:

mvn clean verify sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=9656c84090b2481db6ea97b6d14d87d546bff619

После выполнения команды на интерфейсе будет автоматически создан новый проект и выдан результат обнаружения:

Sonar Project

SonarПредоставляет ряд показателей, таких как покрытие тестами, сложность и т. д., которые могут значительно помочь нам писать лучший код:

指标

4 Резюме

SonarQubeмощный, даDevOpsОдин из важных инструментов, который необходимо понять и освоить.


Добро пожаловать в гостиМедленный разговор тыквы www.pkslow.comПолучайте больше отличных статей!

Добро пожаловать в публичный аккаунт WeChatТыква медленный разговор>, буду обновлять для вас...

Читайте больше, делитесь больше, пишите больше, организуйте больше.