티스토리 뷰

앞서 AWS ec2에 git, gitlab도 설치하고 Jenkins도 설치했었다. CI/CD가 구성되면 그다음은? 품질이다. 정적 소스 분석도구인 Sonarqube를 설치해보자. 기본적으로 java가 설치가 되어 있어야 하는데 이건 Jenkins 설치 글을 보면서 설치해보자. 그리고 간단히 구성을 할것이기 때문에 DB 연동은 하지 않겠다. 


폴더 생성 및 설치

# mkdir /app/sonarqube
# cd /app/sonarqube

필자는 위와 같은 경로에 sonarqube를 설치할 것이다. 어떤 소나큐브를 설치할지 version을 확인해보자. 

 

Index of /Distribution/sonarqube

 

binaries.sonarsource.com

위에서 내 프로젝트에 맞는 sonarqube version을 선택한다. 필자는 7.6으로 설치를 해보겠다. 

# sudo wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.6.zip

7.6 부분에 내가 원하는 version으로 명시를 해서 받을 수 있다. 

# sudo unzip sonarqube-7.6.zip

압축을 풀어준다. 그럼 설치는 완료가 된다.


권한 및 설정 변경

 

sudo로 설치를 해서 sonarqube의 실행은 root 권한이 있어야 한다. 이를 user 사용자로 변경을 해주자. 

# sudo chown -R ec2-user:ec2-user /app/sonarqube

이렇게 해주지 않으면 sonarqube와 연관된 elasticsearch를 실행할 수 없다는 오류(can not run elasticsearch as root)를 볼 수 있다. 

ec2 sonarqube 설치

권한까지 정상적으로 부여가 되면 위와 같은 화면을 볼 수 있을것이다. 

 

여기에서 conf 폴더로 들어가면 sonar.properties를 찾을 수 있다. 이곳에서 sonarqube 포트 변경을 해줄 수 있다. 

sonarqube 포트 변경

중간쯤에 web port를 설정할 수 있는 부분이 있다 기본은 9000이고 필자는 6000으로 변경을 하였다. 


실행

실행은 bin 폴더 아래에 들어가서 내 os에 맞는 폴더로 들어간다. 그럼 sonar.sh 파일이 있을것이고 이것을 통해 실행할 수 있다. 

# sonar.sh start

이렇게 실행할 수 있고 start 대신에 다음과 같은 옵션들을 사용할 수 있다. 

Usage: ./sonar.sh { console | start | stop | restart | status | dump }

 

정상적으로 기동이 되었다면 http://sonarqube설치한서버ip:지정한port 를 통해서 접근할 수 있다. 

 

만약 정상적으로 기동이 되지 않았다면 logs 디렉토리에서 sonar.log 파일에서 문제점을 찾을 수 있다. 

 

끝!

댓글
최근에 올라온 글
최근에 달린 댓글
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31