Jenkins là phần mềm tự động hóa, mã nguồn mở và viết bằng Java. Với Jenkins, các nhà phát triển phần mềm có thể tự động hóa các quy trình phát triển như tự động thực thi kiểm thử, tự động đánh giá chất lượng source code, tự động triển khai phần mềm, hoặc có thể gọi là Continuous Integration và Continuous Delivery.

Yêu cầu

Yều cầu cài đặt với hệ điều hành CentOS 7 với cấu hình

  • CPU: 4 Core
  • RAM: 4 GB
  • Disk: 100 GB

Lưu ý, trong bài node Jenkins sẽ có IP là 10.10.10.85

Cài đặt Jenkins

Bước 1: Chuẩn bị môi trường

Cập nhật hệ điều hành

yum install epel-release -y
yum update -y

Thiết lập Hostname

hostnamectl set-hostname jenkins81

Tắt FirewallD và SELinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
systemctl stop firewalld
systemctl disable firewalld

Cấu hình đồng bộ thời gian

timedatectl set-timezone Asia/Ho_Chi_Minh

yum -y install chrony
systemctl enable chronyd.service
systemctl restart chronyd.service
chronyc sources
timedatectl set-local-rtc 0

Khởi động lại (Tại bước này nên snapshot lại VM)

init 6

Bước 2: Cài đặt Jenkins

Cài đặt Java 1.8

sudo yum install java-1.8.0-openjdk-devel -y

Cài đặt Jenkins repo

curl --silent --location http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo | sudo tee /etc/yum.repos.d/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

Cài đặt Jenkins

sudo yum install jenkins -y

Khởi động Jenkins

systemctl start jenkins
systemctl status jenkins
systemctl enable jenkins

Lưu ý:

  • Mặc đinh Jenkins sẽ chạy ở port 8080

Bước 3: Thiết lập Jenkins

Truy cập đường dần sau http://10.10.10.81:8080, tại giao diện sẽ yêu cầu nhấp khóa mật khẩu Admin

Lưu ý:

  • Khóa bí mật Admin chỉ có khi bạn truy cập vào giao diện lần đầu

Lấy mật khẩu Admin tại đường dẫn

cat /var/lib/jenkins/secrets/initialAdminPassword

Kết quả

[root@jenkins81 ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
87545cc6d1ce46e6a66075d0cb4d76e7

Lấy đoạn mã 87545cc6d1ce46e6a66075d0cb4d76e7 nhập vào giao diện

  1. Nhập mã vào Administrator password
  2. Chọn Continue

Chọn Install suggested plugins

Jenkin sẽ tự động cài đặt các Plugin khuyến cáo, bước này sẽ mất 5-10 phút

Tạo tài khoản Jenkins admin

  • Nhập thông tin tài khoản gồm
    • Username: admin
    • Password: XXX
    • Confirm password: XXX
    • Full name: XXX
    • E-mail address: XXX
  • Chọn Save and Continue để tiếp tục

Tại màn này, chọn Save and Finish

Tại màn này, chọn Starting Jenkins

Giao diện tổng quan Jenkins

Tới đây đã hoàn thành tài liệu cài đặt Jenkins

Bổ sung

Mình sẽ cài thêm Docker lên node Jenkins để phục vụ cho Seri CI CD, nếu bạn chỉ quan tâm tới cài đặt Jenkins thì có thể bỏ qua bước này.

Cài đặt Docker

Cài đặt dịch vụ

curl -fsSL https://get.docker.com/ | sh

Khởi động dịch vụ

sudo systemctl start docker
sudo systemctl status docker
sudo systemctl enable docker

Kiểm tra

docker --version
systemctl status docker

Kết quả

[root@jenkins81 ~]# docker --version
Docker version 19.03.8, build afacb8b
[root@jenkins81 ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since T6 2020-05-15 18:37:53 +07; 29min ago
     Docs: https://docs.docker.com
 Main PID: 941 (dockerd)
    Tasks: 21
   Memory: 210.0M
   CGroup: /system.slice/docker.service
           ├─ 941 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
           └─3549 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 1234 -container-ip 172.19.0.2 -containe...
Hint: Some lines were ellipsized, use -l to show in full.

Thêm user jenkins vào groups Docker

sudo usermod -aG docker jenkins

Cài đặt Docker Compose

Cài đặt dịch vụ

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Kiểm tra dịch vụ

[root@jenkins81 ~]# docker-compose --version
docker-compose version 1.23.2, build 1110ad01

Khởi động lại VM

init 6

Tham khảo