Cài đặt SonarQube trên Ubuntu

SonarQube là một công cụ dùng để phân tích code của bạn để đưa ra những report về chất lượng code, giúp chúng ta có thể xác định được những đoạn code nào cần được improve. Nó còn giúp chúng ta có thể biết được số lượng code coverage mà chúng ta đã cover được trong code của mình. Trong bài viết này, mình hướng dẫn các bạn cách cài đặt nó để bắt đầu improve code của mình các bạn nhé!

Đầu tiên, các bạn cần download tập tin cài đặt của SonarQube từ địa chỉ https://www.sonarqube.org/#downloads. Hiện tại nó có 2 phiên bản: một phiên bản ổn định Long Term Supported và một phiên bản được cập nhập liên tục. Tùy theo nhu cầu mà các bạn download tập tin cài đặt của SonarQube cho phù hợp nhé. Trong bài viết này, mình sẽ cài đặt phiên bản mới nhất, hiện tại version là 7.1 và tập tin download có tên là sonarqube-7.1.zip.

Sau khi download tập tin cài đặt xong, các bạn hãy giải nén nó ra nhé!

Cài đặt SonarQube trên Ubuntu

Để cài đặt SonarQube, các bạn cần làm những bước sau:

Đầu tiên, các bạn cần chuẩn bị một database cho SonarQube.

SonarQube hỗ trợ rất nhiều hệ thống database khác nhau, ví dụ như: MSSQL Server, Oracle, PostgreSQL, MySQL. Mỗi một database sẽ có những yêu cầu nhất định, các bạn có thể xem thêm tại đây. Trong bài viết này, mình sẽ sử dụng MSSQL Server các bạn nhé!.

Mình đã tạo một database với tên là sonar. Với MSSQL Server, các bạn phải đảm bảo collation của database mà SonarQube sử dụng phải là case-sensitive (phân biệt chữ thường, chữ hoa) và accent-sensitive (phân biệt ngữ điệu). Vì hiện tại, database của mình chưa hỗ trợ nên mình phải thay đổi collation của nó như sau:

Tiếp theo, chúng ta sẽ khai báo thông tin cho database trên để SonarQube sử dụng.

Để làm được điều này, trong thư mục giải nén ra của SonarQube, các bạn hãy vào thư mục conf. Trong thư mục này, sẽ có một tập tin tên là sonar.properties. Chúng ta cần khai báo thông tin database cho SonarQube ở những properties sau:

Tất cả những properties trên đều đã được khai báo sẵn, nhưng bị comment. Các bạn cần uncomment những properties này để sử dụng chúng. Đối với những properties về username, password của database thì chỉ có 1, các bạn chỉ cần uncomment rồi khai báo thông tin. Còn property về url của database thì các bạn sẽ thấy nó được khai báo nhiều chỗ dành cho nhiều loại database khác nhau. Các bạn đang sử dụng hệ thống database nào thì uncomment property cho hệ thống database đó.

Ở đây, mình sử dụng MSSQL Server nên mình sẽ uncomment property sonar.jdbc.url dành cho MSSQL Server. Đối với MSSQL Server, chúng ta có thể kết nối tới nó cần hoặc ko cần username, password nên các bạn sẽ thấy có 2 dòng khai báo sonar.jdbc.url dành cho MSSQL Server trong tập tin sonar.properties này.

Mình có sử dụng username, password để kết nối tới MSSQL Server nên mình sẽ uncomment dòng sau:

Properties cho username và password sẽ như sau:

Đến đây thì chúng ta đã hoàn thành các bước chuẩn bị, giờ bắt đầu cài đặt thôi các bạn.

Trong thư mục giải nén của SonarQube, các bạn hãy vào thư mục bin, các bạn sẽ thấy có nhiều thư mục con trong thư mục này dành cho nhiều hệ điều hành khác nhau: linux-x86-32, linux-x86-64, macosx-universal-64, windows-x86-32, windows-x86-64. Mình đang sử dụng Ubuntu 64 bit nên mình sẽ vào thư mục linux-x86-64. Mở Terminal trong thư mục này, chạy câu lệnh sau:

rồi truy cập http://localhost:9000 để bắt đầu cài đặt SonarQube nhé các bạn.

Cài đặt SonarQube trên Ubuntu

Trong cửa sổ trên, các bạn hãy click vào nút Login để đăng nhập vào tài khoản quản trị của SonarQube.

Cài đặt SonarQube trên Ubuntu

Mặc định, tài khoản này là admin và password cũng là admin luôn.

Sau khi đăng nhập xong, các bạn sẽ thấy cửa sổ sau:

Cài đặt SonarQube trên Ubuntu

Đây là cửa sổ cho phép các bạn có thể cấu hình một project mới với SonarQube. Nếu hiện tại không cần thiết thì các bạn có thể nhấn Skip this tutorial để bỏ qua cửa sổ này cũng được.

Cài đặt SonarQube trên Ubuntu

Đến đây là chúng ta đã hoàn thành việc cài đặt SonarQube rồi đó các bạn.

Chia sẽ bài viết này ...Share on Facebook
Facebook
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin

Add Comment