Mình đã giới thiệu với các bạn cách cài đặt SonarQube trên Ubuntu. Có một cách khác đơn giản hơn nhiều là chúng ta sẽ sử dụng Docker. Cụ thể như thế nào? Chúng ta hãy cùng nhau tìm hiểu trong bài viết này các bạn nhé!
Đầu tiên, các bạn hãy mở Terminal trên macOS và Linux hoặc Console trên Window lên, sau đó sử dụng câu lệnh “docker pull” để download SonarQube Image từ Docker Repository.
Ở đây, chúng ta có 2 phiên bản của SonarQube:
- Một là phiên bản LTS (Long-term Support): phiên bản này là phiên bản ổn định.
- Hai là phiên bản Latest: chứa những chức năng mới nhất của SonarQube.
Để download phiên bản LTS, các bạn sử dụng câu lệnh sau:
1 |
docker pull library/sonarqube:lts |
Còn đối với phiên bản Latest thì sử dụng câu lệnh sau:
1 |
docker pull library/sonarqube:latest |
Trong bài viết này mình sẽ sử dụng phiên bản Latest các bạn nhé.
Kết quả:
Sau khi download SonarQube Image xong, giờ mình sẽ khởi động một container từ image này.
Câu lệnh để khởi động container như sau:
1 |
docker run -d -p 9000:9000 sonarqube |
Ở đây, mình đã map port 9000 của container với port 9000 trên máy của mình và chạy với container ở mode detach để container vẫn chạy khi chúng ta tắt command line.
Sau khi đã chạy câu lệnh trên, kiểm tra tất cả các container có trong máy của mình, các bạn sẽ thấy kết quả như sau:
Lúc này nếu các bạn truy cập vào đường dẫn http://localhost:9000/, các bạn sẽ thấy trang đăng nhập vào SonarQube như sau:
Mặc định thì các bạn có thể đăng nhập vào SonarQube với username là admin và password cũng là admin luôn! Nhưng sau khi đăng nhập với thông tin username và password này, SonarQube sẽ yêu cầu bạn đổi mật khẩu của admin user:
Hãy nhập Old Password là “admin”, còn New Password với Confirm Password là mật khẩu mới của các bạn nhé!
Kết quả sau khi các bạn nhấn nút Update như sau:
Đến đây thì các bạn có thể bắt đầu tạo mới project để scan code rồi!
Có một điều các bạn cần lưu ý là, phiên bản cài đặt SonarQube từ Image của Docker sử dụng H2 Database nên nếu các bạn có nhu cầu mở rộng hoặc upgrade lên version mới của Sonar trong tương lai thì không nên sử dụng cách này.