Cách cài đặt Jenkins trên Rocky Linux 8

theanh

Administrator
Nhân viên
Jenkins là một hệ thống xây dựng liên tục mã nguồn mở. Đây là một ứng dụng dựa trên máy chủ được viết bằng Java và thường chạy dưới dạng dịch vụ nền trên máy tính Windows hoặc Unix. Chúng tôi sử dụng Jenkins để tự động giám sát kho lưu trữ để tìm các thay đổi trong mã nguồn của chúng tôi. Ngay khi ai đó đẩy các thay đổi của mình lên kho lưu trữ mã nguồn trung tâm, Jenkins sẽ phân tích các tệp nguồn mới để tìm các thay đổi. Nếu phát hiện tệp nguồn đã thay đổi kể từ lần biên dịch cuối cùng của chúng tôi, thì Jenkins sẽ khởi tạo bản dựng mới trên Máy chủ tích hợp liên tục của chúng tôi.

Jenkins giúp chúng tôi thực hiện đáng kể hai nhiệm vụ quan trọng:
  • Nó đảm bảo rằng tất cả các nhà phát triển đang làm việc với phiên bản mới nhất của các nguồn của dự án
  • Nó cảnh báo mọi người trong trường hợp có sự cố trong quá trình xây dựng hoặc triển khai.
Jenkins hỗ trợ nhiều Công cụ DevOps Quản lý mã (SCM) khác nhau như BitBucket, Git, CVS, Mercurial, Perforce, v.v. Bằng cách sử dụng Jenkins để thăm dò các thay đổi trong kho lưu trữ mã nguồn của chúng tôi, chúng tôi có thể đảm bảo rằng tất cả các nhà phát triển đều có bản sao mới nhất của các nguồn của dự án và họ đang làm việc với những thay đổi mới này.

Ví dụ, Nhà phát triển A kiểm tra phiên bản mới từ hệ thống kiểm soát nguồn chính của dự án và sau khi thực hiện một số thay đổi đối với một vài tệp, anh ta có thể đẩy các cam kết cục bộ của mình để các nhà phát triển khác có thể sử dụng chúng. Nhà phát triển B có thể đã chỉnh sửa cùng một tệp vào khoảng thời gian này và sau đó cô ấy cũng đẩy các thay đổi của mình vào kho lưu trữ mã trung tâm. Đột nhiên, bất cứ khi nào nhà phát triển A cố gắng kiểm tra bản sao cục bộ của dự án, anh ta sẽ được thông báo rằng có những thay đổi mới hơn có sẵn trong kho lưu trữ mã trung tâm. Điều này giúp chúng ta tránh khỏi việc kéo các thay đổi chưa hoàn thiện hoặc lỗi thời từ các nhà phát triển khác và mất các chỉnh sửa của riêng mình thỉnh thoảng.

Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn quy trình cài đặt và cấu hình máy chủ Jenkins trên máy Rocky Linux 8. Hướng dẫn này cũng có thể áp dụng cho các hệ điều hành Red Hat Linux và SUSE Linux khác.

Điều kiện tiên quyết​

  • Máy chủ cài đặt Rocky Linux 8 mới, RAM tối thiểu 1GB. 10 GB dung lượng trống cho mỗi vùng chứa docker mà Jenkins sẽ tạo.
  • Người dùng không phải root có quyền sudo.
  • Hướng dẫn này giả định rằng máy chủ của bạn có thể truy cập internet, thông qua kết nối trực tiếp hoặc qua bộ định tuyến/proxy thượng nguồn.

Bước 1: Cập nhật hệ thống​

Điều đầu tiên chúng ta cần làm là cập nhật hệ thống. Điều quan trọng là phải có một bảng sạch bằng cách cập nhật tất cả các gói hiện có trên máy của chúng ta.
Mã:
sudo dnf update
hoặc
Mã:
sudo yum update
Bạn nên khởi động lại hệ thống nếu đã nâng cấp bất kỳ gói hệ thống quan trọng nào, chẳng hạn như Kernel, để đảm bảo rằng các thay đổi được áp dụng chính xác.
Mã:
sudo reboot now
Đăng nhập lại bằng cùng một người dùng không phải root và tiến hành bước tiếp theo.

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

Jenkins yêu cầu Java Development Kit (JDK) để chạy, vì vậy chúng ta sẽ cần cài đặt bộ công cụ đó. JDK là một gói trong hầu hết các bản phân phối Linux chứa Java Runtime Environment (JRE) và các công cụ khác để chạy/phát triển các ứng dụng và thư viện được viết bằng ngôn ngữ lập trình Java.

Cả JDK 11 và JDK 8 đều có sẵn trong kho lưu trữ chính thức của Rocky Linux 8. Bạn có thể kiểm tra phiên bản JDK nào có sẵn trên hệ thống của mình bằng cách nhập lệnh bên dưới.
Mã:
sudo dnf search java-*-openjdk
Bạn sẽ thấy đầu ra như bên dưới.



Jenkins có thể chạy trên cả JDK 11 và JDK 8, nhưng một số plugin Jenkins cũ có thể không tương thích với JDK 11. Bạn nên sử dụng JDK 8. Trong bước này, chúng tôi cài đặt JDK 8 bằng lệnh sau.
Mã:
sudo dnf install java-1.8.0-openjdk -y
Sau khi java được cài đặt, bạn có thể xác minh rằng phần mềm đã được cài đặt đúng cách bằng cách kiểm tra phiên bản của nó.
Mã:
java -version
Bạn sẽ thấy đầu ra như bên dưới.


Bước 3: Thêm kho lưu trữ Jenkins​

Gói Jenkins không được bao gồm trong kho lưu trữ chính thức của Rocky Linux 8. Bạn phải thêm kho lưu trữ Jenkins để hệ thống tải xuống và cài đặt gói từ đó. Chúng tôi sẽ sử dụng kho lưu trữ Jenkins chính thức do nhóm Jenkins cung cấp.
Mã:
sudo dnf install wget -y
Mã:
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
Bây giờ, hãy thêm khóa GPG cho kho lưu trữ bằng lệnh rpm.
Mã:
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
Hãy kiểm tra xem kho lưu trữ đã được thêm thành công hay chưa bằng cách sử dụng lệnh sau.
Mã:
sudo dnf repolist
Nếu mọi thứ diễn ra chính xác, bạn sẽ thấy đầu ra như bên dưới.


Bước 4: Cài đặt Máy chủ Jenkins​

Trước khi bạn có thể cài đặt máy chủ Jenkins, hãy cập nhật kho lưu trữ bằng lệnh sau:
Mã:
sudo dnf update -y
Bây giờ, bạn có thể cài đặt máy chủ Jenkins bằng cách nhập lệnh sau.
Mã:
sudo dnf install jenkins -y
Nếu không có lỗi hoặc bất kỳ thông báo cụ thể nào trên màn hình sau Bạn gõ lệnh trên nghĩa là cài đặt Jenkins đã thành công. Để kiểm tra xem mọi thứ đã được cài đặt thành công hay chưa, hãy chạy lệnh sau:
Mã:
sudo systemctl status jenkins
Đầu ra của lệnh này sẽ giống như thế này.



Nếu dịch vụ jenkins không chạy, bạn có thể khởi động dịch vụ bằng cách nhập lệnh sau.
Mã:
sudo systemctl start jenkins
Để cho phép dịch vụ jenkins tự động khởi động mỗi khi bạn khởi động lại hệ thống, hãy nhập:
Mã:
sudo systemctl enable jenkins

Bước 5: Cấu hình Tường lửa​

Nếu bạn cài đặt Jenkins trên máy chủ sau tường lửa, bạn sẽ cần mở một số cổng trong cả tường lửa và máy chủ để có thể truy cập Jenkins.

Jenkins sử dụng cổng 8080 theo mặc định để truy cập từ xa, vì vậy bạn có thể muốn mở cổng này để cho phép bên ngoài connection.
Mã:
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
Tải lại tường lửa của bạn để áp dụng những thay đổi bạn đã thực hiện.
Mã:
sudo firewall-cmd --reload
Nếu thành công, cổng 8080 sẽ được mở trong vùng ngoài của tường lửa. Bạn có thể xác minh bằng cách chạy lệnh bên dưới.
Mã:
sudo firewall-cmd --list-all
Bạn sẽ nhận được kết quả như thế này.


Bước 6: Thiết lập Máy chủ Jenkins​

Mở trình duyệt web và nhập địa chỉ IP của máy chủ với cổng 8080 để truy cập Jenkins.
Mã:
http://server_IP_address:8080
Trong đó: server_IP_address là địa chỉ IP thực tế của máy chủ của bạn. Ví dụ, để truy cập máy chủ Jenkins trên 192.168.1.5, bạn sẽ nhập http://192.168.1.5:8080.

Trang Bắt đầu cho Jenkins sẽ xuất hiện, với mẹo về cách lấy lại mật khẩu quản trị viên ban đầu.





Đây là mật khẩu tạm thời được máy chủ Jenkins tự động tạo (nhưng không hiển thị) trong quá trình cài đặt.

Quay lại thiết bị đầu cuối của bạn và chạy lệnh sau để lấy lại mật khẩu.
Mã:
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Lệnh này sẽ in mật khẩu quản trị viên trong thiết bị đầu cuối của bạn.



Sao chép và dán mật khẩu này vào trường mật khẩu quản trị viên ban đầu trên trang Bắt đầu của Jenkins. Nhấp vào Tiếp tục ở góc dưới bên phải.



Bạn sẽ được đưa đến trang plug-in. Chọn Cài đặt plugin được đề xuất và nhấp vào Cài đặt ở cuối trang.



Điều này sẽ cài đặt một bộ plugin chuẩn cần thiết để Jenkins hoạt động bình thường.



Sau khi cài đặt hoàn tất, bạn sẽ được đưa đến trang Tạo người dùng quản trị đầu tiên. Nhập tên người dùng và mật khẩu cho người dùng quản trị đầu tiên. Và nhấp vào Lưu và tiếp tục.



Bạn sẽ được cung cấp trang Cấu hình phiên bản, tại đó bạn cần chỉ định URL gốc cho máy chủ Jenkins của mình. Giữ nguyên mặc định và nhấp vào Lưu và hoàn tất.





Cuối cùng, nhấp vào Bắt đầu sử dụng Jenkins ở trang cuối cùng.





Bạn sẽ được đưa đến bảng điều khiển Jenkins, nơi bạn sẽ bắt đầu xây dựng dự án đầu tiên của mình.





Quá trình cài đặt và cấu hình Jenkins hiện đã hoàn tất.

Kết luận​

Trong hướng dẫn này, bạn đã học cách cài đặt Jenkins trên hệ thống Rocky Linux 8. Bây giờ bạn có thể tận hưởng những lợi ích của tích hợp liên tục và phân phối liên tục trong quy trình phát triển dự án của mình. Chúc bạn viết mã vui vẻ!

Để biết thêm thông tin về Jenkins, vui lòng xem tài liệu chính thức của Jenkins.

Nếu bạn có bất kỳ câu hỏi hoặc đề xuất nào, vui lòng để lại bình luận bên dưới.
 
Back
Bên trên