사설 단어
일부 익숙한 어떤 낯선이 서비스를 SonarQube. 운영 및 유지 보수 인력 우리를 위해, 우리는 SonarQube 코드 품질 관리 플랫폼입니다 이해할 필요가 실제로 거의 충분하다 구성을 설치하는 방법을 알고있다. 우리는 이유는 젠킨스는 플러그인을 가지고 그 회사의 꽤 많은도했다 사용하고, 여기에이 일을 언급 젠킨스 전문. 그래서 우리는 그 이야기를 제시해야합니다.
SonarQube 설치
현재 이러한 서비스가 대부분입니다 당신이 잘 알고있는 자신 만의 고정 표시기에 사용하는 경우 이미 당신이 사용할 수있는, 방법 고정 표시기 설치를 제공합니다. 난 아직 여기에 전통적인 방법을 사용하여 실행합니다.
다운로드 :
나의 현재 다운로드 최신 커뮤니티 버전의 공식 웹 사이트입니다 : 7.8
1. 때문에 소나 JDK를 실행에 의존 할 필요가, 우리는 모두 JDK 환경 변수에 가입 할 수 있습니다 :
에코 ' 수출 JAVA_HOME = / 데이터 / jdk8 수출 CLASSPATH =. $ JAVA_HOME / lib 디렉토리 / dt.jar : $ JAVA_HOME / lib 디렉토리 / tools.jar를 수출 PATH = $ JAVA_HOME / 빈 : $ PATH에 ' >>의 / etc / 프로필 # 生效 소스은 / etc / 프로필
이 시간까지 자바 -version는 JDK 버전 정보를 확인할 수 있습니다 :
2. 수중 음파 탐지기 압축 해제 :
CD / 데이터 / 압축 해제 sonarqube -7.8 .ZIP 에선 -s sonarqube-7.8 수중 음파 탐지기 MV sonarqube -7.8.zip / tmp를 /
은 / 데이터 디렉토리 수중 음파 탐지기 카탈로그에서이 시점에서 우리의 서비스 카탈로그입니다.
3. 모든 수중 음파 탐지기는 크로스 플랫폼, 우리가 리눅스 디렉토리를 찾는 리눅스 기계입니다입니다 실제로 자바 서비스이기 때문에 :
사용자가 루트로 ES를 실행할 수 없기 때문에, 우리는 직접 시작할 수 없습니다이 시점에서, 우리는 권한의 시작을 수정해야합니다 :
# 사용자 편집 디렉토리 권한을 추가 은 useradd SONAR의 CD / 데이터 / 대한 Chown - R & LT sonar.sonar SONAR 대한 Chown -R & LT sonar.sonar sonarqube-7.8 # 핸드 오버 사용자가 시작 SU를 - SONAR CD / 데이터 / SONAR / 빈 / 리눅스 - 64 / . /sonar.sh 콘솔
결과는 다음과 같다 :
이 식별의 완료의 시작, 수중 음파 탐지기는 기본적으로 실행 우리가 알고 필요가 9000 포트, 우리가 볼 수있는 페이지에 액세스 할 수 있습니다 :
4. 그러나, 이러한 구성이 충분하지 않은 액세스의 생산, 우리는 데이터베이스 연결 구성 예를 들어 MySQL을 사용 늘려야합니다 :
我们在另外一台机的 MySQL 数据库新建了一个名为 sonar 的数据库,并授权给用户 sonar,密码也是 sonar。
由于刚刚我们 console 调试模式启动的,所以 ctrl + C 就可以停止服务。
此时需要去修改 sonar 的配置文件:/data/sonar/conf/sonar.properties
如果你非常熟悉 Java 服务你就会觉得很简单,就是 Java 的 JDBC 配置,系统默认注释了,需要放开,我这里的配置如下:
sonar.jdbc.username=sonar sonar.jdbc.password=sonar sonar.jdbc.url=jdbc:mysql://192.168.10.204:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
我们也可以在该配置文件中配置其他,例如运行端口:sonar.web.port=9000
5. 再度启动 Sonar:
此时我们发现 sonar 启动会报错:
解决办法:
切换到 root 用户,修改配置:
# 配置 sysctl -w vm.max_map_count=262144 # 查看 sysctl -a | grep vm.max_map_count # 永久生效 echo 'vm.max_map_count=262144' >> /etc/sysctl.conf
切换会 sonar 用户,再度重启,由于此次重启会初始化一些数据到我们刚刚配置的数据库,所以第一次比较耗时。
你可以连接到数据库查看生成情况,但是我当前的版本存在 BUG,需要手动执行一个 SQL:
insert into schema_migrations values (2128);
否则 sonar 无法启动,在初始化数据的时候会报错。
执行完成后重启 sonar 访问修复:
之后如果卡在 Sonar 正在重启中的页面,可以去服务器执行:
./sonar.sh restart
结果:
默认初始账户:admin / admin
中文汉化:
安装完成后按照提示重启!