Cài Đặt Jenkins Trên VPS Ubuntu

Cài Đặt Jenkins Trên VPS Ubuntu

May 28, 2025 0 By Nam Vu

Jenkins là một công cụ mạnh mẽ để tự động hóa quy trình CI/CD (Continuous Integration/Continuous Deployment).

Mình cũng có vài bài viết cũ về Jenkin, bạn có thể đọc lại

Jenkins – An Open Source for Continuous Integration Server

Cài đặt và cấu hình Jenkins

How to Integrate .NET Projects with Jenkins

Trong bài viết này, bạn sẽ học cách cài đặt Jenkins trên VPS sử dụng hệ điều hành Ubuntu và xử lý một số lỗi phổ biến liên quan đến dịch vụ, port và Java runtime.

1. Cập Nhật Hệ Thống và Cài Đặt Java SDK

Jenkins yêu cầu Java để chạy, vì vậy chúng ta sẽ bắt đầu bằng việc cài đặt Java SDK:

sudo apt update && sudo apt upgrade -y
sudo apt-get install openjdk-11-jdk -y

Nếu sau này phát hiện Jenkins không tương thích với Java 11, bạn có thể nâng cấp lên Java 17 (chi tiết ở bước xử lý lỗi số 2).

2. Cài Đặt Jenkins

Cách 1: Cài qua curl với keyring mới:

curl -fsSL <https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key> | sudo tee \\
  /usr/share/keyrings/jenkins-keyring.asc > /dev/null

echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \\
  <https://pkg.jenkins.io/debian-stable> binary/ | sudo tee \\
  /etc/apt/sources.list.d/jenkins.list > /dev/null

sudo apt update
sudo apt install jenkins -y

Cách 2: Cài đặt thông qua gpg:

wget -q -O - <https://pkg.jenkins.io/debian-stable/jenkins.io.key> |sudo gpg --dearmor -o /usr/share/keyrings/jenkins.gpg
sudo sh -c 'echo deb [signed-by=/usr/share/keyrings/jenkins.gpg] <http://pkg.jenkins.io/debian-stable> binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt install jenkins -y

3. Kiểm Tra Trạng Thái Jenkins

Sau khi cài đặt, kiểm tra dịch vụ:

sudo systemctl status jenkins

Nếu Jenkins chưa khởi động hoặc bị lỗi, bạn cần thực hiện các bước xử lý dưới đây.

4. Xử Lý Các Lỗi Phổ Biến Khi Cài Jenkins

Bước 1: Kiểm tra log hệ thống

sudo journalctl -u jenkins.service -b --no-pager

Bước 2: Đảm bảo Java đã được cài đúng

java -version
sudo apt install openjdk-17-jdk -y
sudo update-alternatives --config java
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64

Bước 3: Kiểm tra port 8080

Jenkins mặc định sử dụng port 8080. Nếu port đã bị chiếm, bạn cần đổi:

sudo lsof -i :8080
sudo nano /etc/default/jenkins
# Thay đổi dòng: HTTP_PORT=8080 => HTTP_PORT=9090

Bước 4: Cấu hình tường lửa

sudo ufw allow 8080
sudo ufw allow 9090
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status

Bước 5: Cấp lại quyền thư mục Jenkins

sudo chown -R jenkins:jenkins /var/lib/jenkins
sudo chown -R jenkins:jenkins /var/log/jenkins
sudo chown -R jenkins:jenkins /var/cache/jenkins

Bước 6: Khởi động lại dịch vụ

sudo systemctl daemon-reexec
sudo systemctl restart jenkins
sudo systemctl status jenkins

5. Truy Cập và Cấu Hình Ban Đầu Jenkins

Sau khi Jenkins hoạt động bình thường, bạn có thể truy cập:

http://<IP_VPS>:8080 hoặc http://<IP_VPS>:9090 (nếu bạn đã đổi port)

Màn hình đầu tiên sẽ yêu cầu Initial Admin Password, bạn lấy bằng lệnh:

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

Sao chép password đó vào form để bắt đầu quá trình cài đặt plugin và tạo user quản trị.

Bạn đã hoàn tất quá trình cài đặt Jenkins trên VPS. Giờ đây bạn có thể tích hợp Jenkins vào quy trình CI/CD của mình, kết nối với GitHub, Docker, hoặc triển khai pipeline để tự động hoá việc build và deploy.

Trong các bài viết tiếp theo, chúng ta sẽ tìm hiểu cách cấu hình Jenkins job, sử dụng pipeline DSL và tích hợp với GitHub Actions hoặc Docker.

Chúc bạn thành công!

#ntechdevelopers