Jenkins
Jenkins là một công cụ tự động hóa mã nguồn mở viết bằng Java, hỗ trợ tích hợp liên tục (CI) và phân phối liên tục (CD) cho các dự án.
Cài đặt Jenkins (Install Jenkins)
Trên Windows
Bước |
Mô tả |
1 |
Cài đặt Java Development Kit (JDK) |
2 |
Thiết lập biến môi trường (Path) cho JDK |
3 |
Tải và cài đặt Jenkins |
4 |
Chạy Jenkins trên localhost:8080 |
Trên Ubuntu
Bước |
Mô tả |
1 |
Cài đặt Java (sudo apt install -y openjdk-17-jdk openjdk-17-jre ) |
2 |
Thêm kho lưu trữ Jenkins |
3 |
Cài đặt Jenkins (sudo apt update , sudo apt install jenkins ) |
4 |
Thiết lập Jenkins qua http://localhost:8080 |
Các loại Job (Job Types)
Loại Job |
Mô tả |
Freestyle |
Job xây dựng đa năng, linh hoạt, phù hợp mọi dự án |
Pipeline |
Chạy toàn bộ quy trình phát triển dưới dạng mã nguồn |
Multiconfiguration |
Chạy cùng job trên nhiều môi trường khác nhau |
Folder |
Tạo thư mục để tổ chức và phân loại job |
GitHub Organization |
Quét toàn bộ tổ chức GitHub, tạo Pipeline cho repository có Jenkinsfile |
Multibranch Pipeline |
Hỗ trợ các Jenkinsfile khác nhau cho từng nhánh của dự án |
Maven |
Xây dựng dự án Maven, tận dụng file POM để đóng gói |
Build Pipeline
Build Pipeline cho phép nối chuỗi nhiều job và chạy tuần tự.
Ví dụ Build Pipeline
Bước |
Mô tả |
1 |
Tạo 3 job Freestyle |
2 |
Nối chuỗi 3 job: Job1 → Job2 → Job3
Job1 → Configure → Post Build → Build other projects → Job2
Job2 → Configure → Post Build → Build other projects → Job3 |
3 |
Tạo Build Pipeline View
Jenkins Dashboard → Add view → Nhập tên → Build Pipeline View → OK → Configure → Pipeline Flow → Chọn Job ban đầu → Job1 → OK |
4 |
Chạy Build Pipeline |
Jenkins Pipeline
Jenkins Pipeline chạy toàn bộ quy trình dưới dạng mã nguồn trong file Jenkinsfile, viết bằng Groovy DSL.
Cú pháp Pipeline
Loại |
Mô tả |
Scripted Pipeline |
Mã được viết trên giao diện Jenkins, nằm trong khối node { ... } |
Declarative Pipeline |
Mã được viết cục bộ trong file, đẩy lên SCM, nằm trong khối pipeline { ... } |
Plugins Jenkins (Jenkins Plugins)
Jenkins có hơn 2000 plugin. Một số plugin phổ biến: Maven, Git, Ant, Docker, Amazon EC2, HTML Publisher, Copy Artifact, v.v.
Cách cài đặt Plugin
Bước |
Mô tả |
1 |
Jenkins Dashboard → Manage Jenkins → Manage Plugins → Available |
2 |
Nhập tên plugin vào ô lọc và cài đặt |
Dự án Maven (Maven Project)
Tính năng |
Mô tả |
Build Step |
Viết mục tiêu Maven (CLEAN, INSTALL, COMPILE, TEST, PACKAGE) tác động lên file POM.xml |
Post-build Actions |
Triển khai file WAR/EAR lên container và lưu trữ |
Pre-build Steps |
Thực thi lệnh batch hoặc shell |
Ví dụ Dự án Maven
Mở job Freestyle → Dán URL repository GitHub chứa POM.xml vào SCM → Thêm lệnh Maven (mvn clean install
) → Tạo file WAR/JAR → Triển khai lên Tomcat.
Triển khai tự động (Automated Deployment)
Bước |
Mô tả |
1 |
Vào Manage Plugins, cài plugin phù hợp |
2 |
Lấy file WAR/EAR và triển khai lên ứng dụng remote đang chạy |
3 |
Vào Build → Configure → Chọn “Deploy WAR/EAR to container” |
4 |
Nhập thông tin server đích trong phần WAR container → Lưu |
Quản lý người dùng và vai trò (Manage Users & Roles)
Jenkins hỗ trợ phân quyền cho từng job bằng “Project-based Matrix Authorization Strategy”.
Thiết lập
Bước |
Mô tả |
1 |
Đăng nhập bằng tài khoản Admin → Manage Jenkins → Configure Global Security |
2 |
Trong “Authorization”, chọn “Project-based Matrix Authorization Strategy” |
3 |
Thêm user “Admin” và cấp toàn quyền bằng cách tích hết các ô |
Tải xuống cheat sheet