가이버2
개발 블로그
가이버2
전체 방문자
오늘
어제
  • 분류 전체보기 (172)
    • 교육 (115)
      • 백엔드 (14)
      • 프론트 (2)
      • 네트워크 관련 (4)
      • 데이터 관련 (3)
      • devops (3)
      • 그외 (3)
      • 알고리즘 (5)
      • 코테 (81)
    • 디버깅 (3)
      • 스프링 Data JPA (3)
      • JAVA (0)
    • 개발 편의 (8)
    • 기계 (25)
      • NAS (10)
      • ROUTER (0)
      • 맥북 (15)
    • 소프트웨어 (17)
      • WIN (4)
      • MAC (13)
      • LINUX (0)
    • 생활 (0)
      • 구매 (0)
      • 오월이 (0)
    • 링크 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • naelonambul 개발 블로그 입니다.

인기 글

태그

  • 맥
  • 윈도우
  • 시놀로지
  • 인프런
  • 프로그래머스
  • ARM
  • Java
  • WSL
  • 맥미니
  • 맥북
  • 스프링
  • SQL
  • JS
  • SSD
  • 가상화
  • 코딩테스트
  • M4
  • Spring
  • M1
  • intellij

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
가이버2

개발 블로그

교육/devops

[SONARQUBE] 소나큐브 셋팅

2022. 11. 26. 06:00

목표 : 앞으로 계속 사용하게될 소나큐브 서버를 세팅

추가 목표 : 젠킨스와 연동 가능하게 설정

  1. 도커 설치. 
    1. 리눅스 설치 링크 : https://docs.docker.com/desktop/install/linux-install/
    2. 윈도우 설치 링크 : https://docs.docker.com/desktop/install/windows-install/
    3. 실리콘 맥에서 설치 권장하지 않음.
  2. Docker compose 사용하여 구축
    1. docker-compose.yml 생성 (하단에 첨부) 
    2. 같은 폴더에서 docker-compose up 명령어 입력
      1. elastic search 관련 오류로 컨테이너가 종료될수 있음
      2. 컨테이너의 vm.max_map_count = 262144 로 수정해줘야된다.
      3. wsl 의 경우에는 설정값 변경이 적용되지 않으니 윈도우 /Users/사용자/.wslconfig 를 메모장으로 생성
      4. [wsl2]
        kernelCommandLine="sysctl.vm.max_map_count=262144" 를 추가해준다.
      5. docker-compose up를 입력해서 컨테이너가 실행 되는지 확인한다.
    3. 컨테이너가 실행되는것을 확인한다.
  3. 구축된 Sonar Qube 관리자 설정
    1. 계정/비밀번호는 admin/admin이다.
    2. 로그인을 하면 새로운 비밀번호를 설정하라고 한다.
    3. 그후 우측 상단 A에서 MyAccount 를 클릭한다.
    4. Security에 들어가면 token 생성을 할수 있는데 지금 할필요는 없다.
  4. IDE와 연결
    1. VS Code 의 플러그인 검색에서 sonarLint를 설치한다.
    2. 설치하고 다시 파일탭으로 넘어가면 파일 리스트 하단에 SONARLINT CONNECTED MODE를 클릭
    3. 하단의 SonarQube + 버튼을 클릭하여 서버 등록창을 띄운다.
    4. 그리고 우측 Server URL에 http://localhost:9000을 입력하고 
    5. Generate Token을 클릭
    6. 그러면 크롬 브라우저에서 연결하겠냐고 물어본다.
    7. 연결을 선택하면 자동으로 남은 칸들이 채워 지면서 서버가 등록된다.
    8. 등록된 토큰은 1년 동안 지속된다.
  5. 프로젝트 생성
    1. 다시 http://localhost:9000으로 접속한다.
    2. 좌측 상단의 Projects를 클릭.
    3. 그리고 Create Project -> manually 클릭
    4. 원하는 프로젝트 이름을 입력하자.
    5. 프로젝트의 유형을 정할수 있는데 Locally를 선택하자.
    6. 그럼 프로젝트 전용 token을 생성할수 있다.
    7. 적절한 기간을 설정한후 generate 버튼을 누르자.
    8. 그러면 토큰이 생성되고 continue를 누르자.
    9. 이후 자신의 맞는 언어의 빌드를 선택한다.
      1. Java (Maven, Gradle)
      2. C# (.Net)
      3. TypeScript 그외 (Others)
    10. 이제 자신의 프로젝트에 맞게 설정을 해주면된다.
      1. TypeScript(그외)의 경우 SonnarScanner를 설치해 줘야된다.
    11. IDE와 프로젝트 설정
      1. 파일탭 좌측 하단의 연결해 뒀던 SonarQube의 http-localhost-9000 서버를 선택하다
      2. 그리고 + 버튼을 누르면 Add Project Binding 창이 나오면서 우리가 생성했던 프로젝트를 선택한다.
      3. 그러면 우측 하단에 파란 느낌표 모양으로 프로젝트가 바인딩 됬다는 알림창이 뜬다.
      4. 이후 코딩을 하면서 빨간 물결 표시가 나오면 좌측 물음표를 클릭하면 내가 위반하고 있는 룰을 알수 잇다.
      5. 룰 설명서에는 적절한 수정방법 또한 제시하고 있으니 참고하며 수정하면 된다.

 

 

docker-compose.yml


version: "3"
services:
  sonarqube:
    image: sonarqube:community
    depends_on:
      - db
    environment:
      SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
      SONAR_JDBC_USERNAME: sonar
      SONAR_JDBC_PASSWORD: sonar
    volumes:
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions
      - sonarqube_logs:/opt/sonarqube/logs
    ports:
      - "9000:9000"
  db:
    image: postgres:12
    environment:
      POSTGRES_USER: sonar
      POSTGRES_PASSWORD: sonar
    volumes:
      - postgresql:/var/lib/postgresql
      - postgresql_data:/var/lib/postgresql/data

volumes:
  sonarqube_data:
  sonarqube_extensions:
  sonarqube_logs:
  postgresql:
  postgresql_data:

'교육 > devops' 카테고리의 다른 글

[SONARQUBE&JENKINS] 소나 큐브, 젠킨스 파이프라인 적용  (0) 2022.11.26
[Jenkins] 파이프 라인 구성  (0) 2022.11.16
    '교육/devops' 카테고리의 다른 글
    • [SONARQUBE&JENKINS] 소나 큐브, 젠킨스 파이프라인 적용
    • [Jenkins] 파이프 라인 구성
    가이버2
    가이버2
    개인 개발 블로그 입니다.

    티스토리툴바