출발지 A서버(이하 A) -> 도착지 B서버로(이하 B) 마이그레이션(이전) 방법을 공유 합니다.
SonarQube7.9 설치하기 /w PostgreSQL (docker-compose) 구축되어져 있다는 가정입니다.
3줄 요약 :
- A의 volumes 경로 압축
- 압축파일을 B에 복사하고 A와 동일한 경로에 압축해제
- docker-compose up 만 하면 마이그레이션 완료 👌
$ sysctl -w vm.max_map_count=262144
$ sysctl -w fs.file-max=65536
$ ulimit -n 65536
$ ulimit -u 4096```
[SonarQube7.9 사전 설치 제약 조건](https://docs.sonarqube.org/7.9/requirements/requirements/)
### 3. 백업 (A서버)
압축 파일을 생성합니다. `sonarqube.tar.gz`
```bash
$ cd /app/
$ tar -zvcf sonarqube.tar.gz sonarqube
$ ...
$ ls -al # sonarqube.tar.gz 확인
1) 압축 파일을 B서버로 복사하고, 압축을 풀어줍니다.
$ cd /app/
$ tar -xvzf sonarqube.tar.gz
$ ...
$ ls -al # /app/sonarqube 디렉토리 생성 확인
2) docker-compose.yml
생성
$ vi /work/sonarqube/docker-compose.yml
version: "3.1"
services:
sonarqube:
image: sonarqube:7.9.1-community
container_name: sonarqube7.9
ports:
- "9000:9000"
- "9092:9092"
networks:
- sonarnet
environment:
- SONARQUBE_HOME=/opt/sonarqube
- SONARQUBE_JDBC_USERNAME=sonar
- SONARQUBE_JDBC_PASSWORD=sonar
- SONARQUBE_JDBC_URL=jdbc:postgresql://db:5432/sonar
volumes:
- /app/sonarqube/conf:/opt/sonarqube/conf
- /app/sonarqube/data:/opt/sonarqube/data
- /app/sonarqube/logs:/opt/sonarqube/logs
- /app/sonarqube/extensions:/opt/sonarqube/extensions
db:
image: postgres
container_name: postgres
networks:
- sonarnet
environment:
- POSTGRES_USER=sonar
- POSTGRES_PASSWORD=sonar
volumes:
- /app/sonarqube/postgres:/var/lib/postgresql/data
networks:
sonarnet:
driver: bridge
3) SonarQube 기동
$ cd /work/sonarqube
$ docker-compose up -d
1) 서비스 시작
$ docker-compose up -d
2) 🚬 (5분 후) 실행 로그 확인
docker logs --tail 10 sonarqube7.9 # 로그의 마지막 10줄만 출력
3) SonarQube 로그인
http://<IP>:9000
접속 (admin / admin)
데이터 확인되면 끝! 🙆