Jenkins là một công cụ tự động hóa nguồn mở cho Tích hợp liên tục/Phân phối liên tục (CI/CD). được viết hoàn toàn bằng Java với sự hỗ trợ của hơn 1000 plugin để xây dựng, triển khai và tự động hóa dự án của bạn. Jenkins đã trở thành một trong những công cụ tự động hóa hàng đầu giúp đẩy nhanh quá trình phát triển của bạn thông qua tự động hóa. Jenkins tích hợp các quy trình vòng đời phát triển như xây dựng, lập tài liệu, kiểm tra, đóng gói, dàn dựng, triển khai, phân tích tĩnh và nhiều quy trình khác.
Jenkins hỗ trợ nhiều công cụ kiểm soát phiên bản như Git, Subversion, Mercurial, CVS, Perforce và RTC. Ngoài ra, nó có thể thực thi Apache Ant, Apache Maven, tập lệnh shell và lệnh hàng loạt Windows. Jenkins có cộng đồng hỗ trợ mạnh mẽ với tài liệu mở rộng và wiki, giúp Jenkins trở thành một trong những công cụ CI/CD tự động hóa được sử dụng nhiều nhất. Ngoài ra, nó cung cấp nhiều công cụ, ngôn ngữ và tác vụ tự động hóa khác nhau để tự động hóa quy trình phát triển và triển khai của bạn.
Trong hướng dẫn này, bạn sẽ cài đặt và thiết lập Jenkins với proxy ngược Apache/httpd trên máy chủ Rocky Linux 9. Bạn cũng sẽ bảo mật Jenkins bằng SSL và tường lửa. Cuối cùng, bạn sẽ tạo một bản dựng Jenkins đơn giản.
Kho lưu trữ Rocky Linux mặc định cung cấp nhiều phiên bản Java OpenJDK. Để cài đặt Jenkins, bạn có thể sử dụng Java OpenJDK 11 hoặc 17. Ví dụ này sử dụng java OpenJDK 11, hãy chạy lệnh dnf bên dưới để cài đặt.
Nhập y khi được nhắc và nhấn ENTER để tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22209%22%3E%3C/svg%3E
Sau khi Java được cài đặt, hãy xác minh phiên bản Java bằng lệnh bên dưới. Bạn nên cài đặt Java OpenJDK 11 trên Rocky Linux của mình.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22135%22%3E%3C/svg%3E
Trước khi thêm kho lưu trữ Jenkins, hãy chạy lệnh dnf sau để cài đặt các gói sau.
Sau đó, tải xuống kho lưu trữ Jenkins cho hệ điều hành dựa trên RHEL thông qua lệnh wget bên dưới. Kho lưu trữ sẽ được lưu trữ tại '/etc/yum.repos.d/jenkins.repo'.
Tiếp theo, nhập khóa GPG của kho lưu trữ Jenkins vào hệ thống của bạn bằng lệnh rpm bên dưới.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22293%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh danh sách kho lưu trữ được kích hoạt trên hệ thống của bạn thông qua lệnh dnf bên dưới.
Bạn sẽ nhận được thông báo cho biết kho lưu trữ Jenkins đã có trên hệ thống của bạn và bạn đã sẵn sàng cài đặt Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E
Chạy lệnh dnf sau để cài đặt Jenkins.
Khi được nhắc, hãy nhập y để xác nhận và nhấn ENTER để tiếp tục. Và quá trình cài đặt Jenkins sẽ bắt đầu. Trong kết quả đầu ra bên dưới, bạn sẽ cài đặt Jenkins v2.361, đây là phiên bản ổn định mới nhất của jenkins (tại thời điểm viết bài này).
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22266%22%3E%3C/svg%3E
Sau đó, chạy lệnh systemctl sau để tải lại trình quản lý systemd sau khi quá trình cài đặt Jenkins hoàn tất. Sau khi cài đặt, dịch vụ 'jenkins' sẽ được tạo và lệnh này sẽ áp dụng dịch vụ mới cho hệ thống của bạn.
Tiếp theo, khởi động và bật dịch vụ 'jenkins' thông qua lệnh systemctl. Jenkins hiện đang chạy trên hệ thống của bạn và sẽ tự động chạy trong quá trình khởi động hoặc khởi động lại.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22695%22%20height=%22184%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh Jenkins thông qua systemctl sau lệnh.
Bạn sẽ nhận được đầu ra tương tự như ảnh chụp màn hình sau - Dịch vụ Jenkins đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22213%22%3E%3C/svg%3E
Bây giờ Jenkins đang chạy, bạn có thể bắt đầu cấu hình ban đầu cho Jenkins. Tuy nhiên, bạn sẽ thiết lập và chạy Jenkins với Apache/httpd làm proxy ngược.
Trước khi bắt đầu, hãy đảm bảo rằng bạn đã trỏ tên miền đến địa chỉ IP Rocky Linux của mình và bạn cũng đã tạo chứng chỉ SSL. Bạn có thể sử dụng chứng chỉ tự ký hoặc sử dụng SSL miễn phí từ Let'sencrypt.
Trước tiên, hãy cài đặt máy chủ web httpd và gói mod_ssl thông qua lệnh dnf bên dưới. Nhập y khi được nhắc, sau đó nhấn ENTER để tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22480%22%3E%3C/svg%3E
Gói mod_ssl yêu cầu bạn thiết lập chứng chỉ cho máy chủ cục bộ. Vì vậy, hãy chạy lệnh sau để tạo chứng chỉ tự ký chỉ dành cho máy chủ cục bộ.
Sau khi thực hiện, bạn sẽ được yêu cầu nhập thông tin chi tiết cho chứng chỉ SSL. Bạn có thể nhập thông tin chi tiết của mình và bỏ qua bằng cách nhấn ENTER.
Sau khi máy chủ web httpd được cài đặt, hãy tạo cấu hình máy chủ ảo mới '/etc/httpd/conf.d/jenkins.conf' bằng lệnh trình chỉnh sửa nano sau.
Thêm cấu hình bên dưới vào tệp. Ví dụ này sử dụng tên miền 'jenkins.howtoforge.local' với chứng chỉ SSL từ Letsencrypt. Vì vậy, hãy đảm bảo thay đổi tên miền và đường dẫn của chứng chỉ SSL.
Lưu tệp và đóng trình chỉnh sửa khi bạn hoàn tất.
Tiếp theo, chạy lệnh bên dưới để xác minh cấu hình httpd. Nếu bạn nhận được kết quả đầu ra như 'Cú pháp OK', điều đó có nghĩa là bạn đã cấu hình httpd đúng và bạn đã sẵn sàng để bắt đầu dịch vụ httpd.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22236%22%3E%3C/svg%3E
Khởi động và kích hoạt dịch vụ httpd thông qua lệnh systemctl bên dưới.
Xác minh trạng thái dịch vụ httpd bằng lệnh bên dưới. Bạn sẽ thấy dịch vụ httpd đang chạy và được bật, điều này có nghĩa là httpd sẽ tự động khởi động khi khởi động.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22210%22%3E%3C/svg%3E
Trong bước này, bạn đã cài đặt máy chủ web httpd, cấu hình httpd làm proxy ngược và bật HTTPS an toàn. Nhưng để truy cập cài đặt Jenkins, bạn vẫn cần thiết lập firewalld trên máy chủ Rocky Linux của mình.
Chạy lệnh firewall-cmd sau để thêm các dịch vụ HTTP và HTTPS vào firewalld.
Sau đó, tải lại firewalld để áp dụng các thay đổi mới và xác minh danh sách các dịch vụ được bật trên firewalld.
Lệnh này sẽ đưa ra kết quả sau - Cả hai Dịch vụ HTTP và HTTPS được thêm vào tường lửa.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22244%22%3E%3C/svg%3E
Sau khi mở cổng HTTP và HTTPS, bạn sẽ bắt đầu cài đặt và cấu hình Jenkins ban đầu thông qua trình duyệt web.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22704%22%20height=%22182%22%3E%3C/svg%3E
Bây giờ hãy mở trình duyệt web và truy cập tên miền cài đặt Jenkins của bạn (ví dụ: https://jenkins.howtoforge.local/).
Ở trang đầu tiên, bạn sẽ yêu cầu Mật khẩu quản trị viên ban đầu của Jenkins. Dán mật khẩu ban đầu của Jenkins và nhấp vào 'Tiếp tục'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22698%22%20height=%22750%22%3E%3C/svg%3E
Bây giờ tùy chỉnh cài đặt Jenkins bằng cách cài đặt một số plugin. Bạn có thể chọn plugin theo cách thủ công (dành cho chuyên gia) hoặc bạn có thể chọn tùy chọn 'cài đặt plugin được đề xuất' để cài đặt plugin được Jenkins đề xuất.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22458%22%3E%3C/svg%3E
Cài đặt plugin Jenkins sẽ bắt đầu. Tất cả các plugin đó hiện sẽ được cài đặt trên Jenkins của bạn.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22531%22%3E%3C/svg%3E
Khi quá trình cài đặt plugin hoàn tất, bạn sẽ thiết lập người dùng quản trị cho Jenkins. Nhập thông tin chi tiết, người dùng, email và mật khẩu cho Jenkins của bạn và nhấp vào 'Lưu và tiếp tục'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22712%22%20height=%22750%22%3E%3C/svg%3E
Tiếp theo, nhập URL Jenkins vào cấu hình phiên bản. Trong ví dụ này, Jenkins chạy với proxy ngược httpd trên miền 'https://jenkins.howtoforge.local/'.
Nhấp vào 'Lưu và Hoàn tất' để hoàn tất cấu hình ban đầu của Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22712%22%20height=%22750%22%3E%3C/svg%3E
Sau khi cấu hình ban đầu của Jenkins hoàn tất, bạn sẽ được chuyển hướng đến bảng điều khiển Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22404%22%3E%3C/svg%3E
Bây giờ bạn đã hoàn tất cấu hình ban đầu của Jenkins. Với điều này trong tâm trí, bạn có thể tạo và thiết lập bản dựng Jenkins mới. Đọc tiếp để tìm hiểu về Jenkins Build.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22325%22%20height=%22212%22%3E%3C/svg%3E
Nhập tên dự án cho bản dựng mới này và chọn loại dự án. Trong ví dụ này, bạn sẽ tạo một bản dựng Jenkins mới "Bản dựng đầu tiên" với loại "Dự án Freestyle'.
Nhấp OK để tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22637%22%3E%3C/svg%3E
Trong phần "Chung", nhập mô tả dự án. Sau đó, chuyển đến phần "Các bước xây dựng".
Chọn đặc điểm xây dựng là "Thực thi shell" và nhập lệnh bash đơn giản bên dưới.
Bây giờ hãy nhấp vào Lưu để xác nhận và tạo bản dựng Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22484%22%3E%3C/svg%3E
Bây giờ bạn sẽ được chuyển hướng đến trang bản dựng Jenkins cho dự án "Bản dựng đầu tiên".
Nhấp vào "Bản dựng ngay" để bắt đầu và chạy bản dựng Jenkins. Sau khi chạy dự án, bạn sẽ thấy lịch sử xây dựng trong phần "Lịch sử xây dựng".
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22602%22%20height=%22686%22%3E%3C/svg%3E
Trong ảnh chụp màn hình sau, chỉ có một lịch sử xây dựng Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22584%22%20height=%22627%22%3E%3C/svg%3E
Nhấp vào lịch sử bản dựng số 1 để biết thêm chi tiết về kết quả đầu ra của bản dựng Jenkins. Bây giờ hãy nhấp vào "Console Output" để có được đầu ra chi tiết được tạo ra bởi bản dựng Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22316%22%3E%3C/svg%3E
Bây giờ bạn đã biết cách tạo và chạy bản dựng Jenkins.
Ngoài ra, bạn cũng đã học cách cấu hình ban đầu cơ bản cho Jenkins và cách tạo và chạy bản dựng Jenkins thông qua giao diện web quản trị Jenkins.
Bây giờ bạn đã triển khai Jenkins hoàn toàn hoạt động, bạn có thể thêm dự án của mình và thiết lập bản dựng Jenkins cho ứng dụng của mình. Ngoài ra, bạn có thể mở rộng chức năng của Jenkins bằng cách thêm các plugin phù hợp với môi trường của mình.
Jenkins hỗ trợ nhiều công cụ kiểm soát phiên bản như Git, Subversion, Mercurial, CVS, Perforce và RTC. Ngoài ra, nó có thể thực thi Apache Ant, Apache Maven, tập lệnh shell và lệnh hàng loạt Windows. Jenkins có cộng đồng hỗ trợ mạnh mẽ với tài liệu mở rộng và wiki, giúp Jenkins trở thành một trong những công cụ CI/CD tự động hóa được sử dụng nhiều nhất. Ngoài ra, nó cung cấp nhiều công cụ, ngôn ngữ và tác vụ tự động hóa khác nhau để tự động hóa quy trình phát triển và triển khai của bạn.
Trong hướng dẫn này, bạn sẽ cài đặt và thiết lập Jenkins với proxy ngược Apache/httpd trên máy chủ Rocky Linux 9. Bạn cũng sẽ bảo mật Jenkins bằng SSL và tường lửa. Cuối cùng, bạn sẽ tạo một bản dựng Jenkins đơn giản.
Điều kiện tiên quyết
Để bắt đầu, bạn sẽ cần các yêu cầu sau để hoàn thành hướng dẫn này:- Máy chủ Rocky Linux - Hướng dẫn này sử dụng Rocky Linux 9 mới nhất.
- Người dùng không phải root có quyền quản trị viên sudo/root.
- Tên miền trỏ đến địa chỉ IP của máy chủ - Ví dụ này sử dụng tên miền 'jenkins.howtoforge.local'
- SELinux được định cấu hình ở chế độ 'permissive'.
Cài đặt Java OpenJDK
Jenkins được viết bằng Java blah blah. Trong bước này, bạn sẽ cài đặt Java OpenJDK 11.Kho lưu trữ Rocky Linux mặc định cung cấp nhiều phiên bản Java OpenJDK. Để cài đặt Jenkins, bạn có thể sử dụng Java OpenJDK 11 hoặc 17. Ví dụ này sử dụng java OpenJDK 11, hãy chạy lệnh dnf bên dưới để cài đặt.
Mã:
sudo dnf install java-11-openjdk
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22209%22%3E%3C/svg%3E
Sau khi Java được cài đặt, hãy xác minh phiên bản Java bằng lệnh bên dưới. Bạn nên cài đặt Java OpenJDK 11 trên Rocky Linux của mình.
Mã:
java -version
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22135%22%3E%3C/svg%3E
Thêm kho lưu trữ Jenkins
Jenkins có thể được triển khai trên nhiều môi trường, bao gồm cả môi trường độc lập trên các máy ảo như vậy hoặc sử dụng công nghệ container như Docker và Kubernetes. Đối với bản phân phối Linux, bạn có thể cài đặt Jenkins thông qua các gói nhị phân do kho lưu trữ Jenkins cung cấp.Trước khi thêm kho lưu trữ Jenkins, hãy chạy lệnh dnf sau để cài đặt các gói sau.
Mã:
sudo dnf install wget curl
Mã:
sudo wget -O /etc/yum.repos.d/jenkins.repo \
https://pkg.jenkins.io/redhat-stable/jenkins.repo
Mã:
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22293%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh danh sách kho lưu trữ được kích hoạt trên hệ thống của bạn thông qua lệnh dnf bên dưới.
Mã:
sudo dnf repolist
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E
Cài đặt Jenkins
Sau khi thêm kho lưu trữ, giờ bạn sẽ cài đặt Jenkins trên máy chủ Rocky Linux của mình.Chạy lệnh dnf sau để cài đặt Jenkins.
Mã:
sudo dnf install jenkins
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22266%22%3E%3C/svg%3E
Sau đó, chạy lệnh systemctl sau để tải lại trình quản lý systemd sau khi quá trình cài đặt Jenkins hoàn tất. Sau khi cài đặt, dịch vụ 'jenkins' sẽ được tạo và lệnh này sẽ áp dụng dịch vụ mới cho hệ thống của bạn.
Mã:
sudo systemctl daemon-reload
Mã:
sudo systemctl start jenkins
sudo systemctl enable jenkins
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22695%22%20height=%22184%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh Jenkins thông qua systemctl sau lệnh.
Mã:
sudo systemctl status jenkins
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22213%22%3E%3C/svg%3E
Bây giờ Jenkins đang chạy, bạn có thể bắt đầu cấu hình ban đầu cho Jenkins. Tuy nhiên, bạn sẽ thiết lập và chạy Jenkins với Apache/httpd làm proxy ngược.
Cài đặt và cấu hình httpd làm Proxy ngược
Lúc này, Jenkins có thể truy cập được qua cổng TCP 8080. Để Jenkins thân thiện và an toàn hơn với người dùng, bạn sẽ cài đặt và cấu hình máy chủ web Apache/httpd làm proxy ngược cho Jenkins của mình.Trước khi bắt đầu, hãy đảm bảo rằng bạn đã trỏ tên miền đến địa chỉ IP Rocky Linux của mình và bạn cũng đã tạo chứng chỉ SSL. Bạn có thể sử dụng chứng chỉ tự ký hoặc sử dụng SSL miễn phí từ Let'sencrypt.
Trước tiên, hãy cài đặt máy chủ web httpd và gói mod_ssl thông qua lệnh dnf bên dưới. Nhập y khi được nhắc, sau đó nhấn ENTER để tiếp tục.
Mã:
sudo dnf install httpd mod_ssl
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22480%22%3E%3C/svg%3E
Gói mod_ssl yêu cầu bạn thiết lập chứng chỉ cho máy chủ cục bộ. Vì vậy, hãy chạy lệnh sau để tạo chứng chỉ tự ký chỉ dành cho máy chủ cục bộ.
Sau khi thực hiện, bạn sẽ được yêu cầu nhập thông tin chi tiết cho chứng chỉ SSL. Bạn có thể nhập thông tin chi tiết của mình và bỏ qua bằng cách nhấn ENTER.
Mã:
openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 365 -out /etc/pki/tls/certs/localhost.crt
Mã:
sudo nano /etc/httpd/conf.d/jenkins.conf
Mã:
ServerAdmin webmaster@localhost
Redirect permanent / https://jenkins.howtoforge.local/
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/jenkins.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/jenkins.howtoforge.local/privkey.pem
ServerAdmin webmaster@localhost
ProxyRequests Off
ProxyPreserveHost On
AllowEncodedSlashes NoDecode
Order deny,allow
Allow from all
ProxyPass / http://localhost:8080/ nocanon
ProxyPassReverse / http://localhost:8080/
ProxyPassReverse / http://jenkins.howtoforge.local/
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
Tiếp theo, chạy lệnh bên dưới để xác minh cấu hình httpd. Nếu bạn nhận được kết quả đầu ra như 'Cú pháp OK', điều đó có nghĩa là bạn đã cấu hình httpd đúng và bạn đã sẵn sàng để bắt đầu dịch vụ httpd.
Mã:
sudo apachectl configtest
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22236%22%3E%3C/svg%3E
Khởi động và kích hoạt dịch vụ httpd thông qua lệnh systemctl bên dưới.
Mã:
sudo systemctl start httpd
sudo systemctl enable httpd
Mã:
sudo systemctl status httpd
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22210%22%3E%3C/svg%3E
Trong bước này, bạn đã cài đặt máy chủ web httpd, cấu hình httpd làm proxy ngược và bật HTTPS an toàn. Nhưng để truy cập cài đặt Jenkins, bạn vẫn cần thiết lập firewalld trên máy chủ Rocky Linux của mình.
Cấu hình Firewalld
Firewalld là phần mềm tường lửa mặc định trên các hệ điều hành dựa trên RHEL, bao gồm cả Rocky Linux. Nó được cài đặt và chạy theo mặc định trên Rocky Linux. Bây giờ bạn sẽ thiết lập firewalld và mở dịch vụ HTTP và HTTPS để cho phép truy cập vào Jenkins.Chạy lệnh firewall-cmd sau để thêm các dịch vụ HTTP và HTTPS vào firewalld.
Mã:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
Mã:
sudo firewall-cmd --reload
sudo firewall-cmd --list-services
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22244%22%3E%3C/svg%3E
Sau khi mở cổng HTTP và HTTPS, bạn sẽ bắt đầu cài đặt và cấu hình Jenkins ban đầu thông qua trình duyệt web.
Cấu hình ban đầu của Jenkins
Trước khi bắt đầu cấu hình ban đầu của Jenkins, hãy chạy lệnh sau để lấy mật khẩu ban đầu cho Jenkins. Mật khẩu quản trị viên ban đầu được yêu cầu lần đầu tiên khi cấu hình Jenkins.
Mã:
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22704%22%20height=%22182%22%3E%3C/svg%3E
Bây giờ hãy mở trình duyệt web và truy cập tên miền cài đặt Jenkins của bạn (ví dụ: https://jenkins.howtoforge.local/).
Ở trang đầu tiên, bạn sẽ yêu cầu Mật khẩu quản trị viên ban đầu của Jenkins. Dán mật khẩu ban đầu của Jenkins và nhấp vào 'Tiếp tục'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22698%22%20height=%22750%22%3E%3C/svg%3E
Bây giờ tùy chỉnh cài đặt Jenkins bằng cách cài đặt một số plugin. Bạn có thể chọn plugin theo cách thủ công (dành cho chuyên gia) hoặc bạn có thể chọn tùy chọn 'cài đặt plugin được đề xuất' để cài đặt plugin được Jenkins đề xuất.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22458%22%3E%3C/svg%3E
Cài đặt plugin Jenkins sẽ bắt đầu. Tất cả các plugin đó hiện sẽ được cài đặt trên Jenkins của bạn.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22531%22%3E%3C/svg%3E
Khi quá trình cài đặt plugin hoàn tất, bạn sẽ thiết lập người dùng quản trị cho Jenkins. Nhập thông tin chi tiết, người dùng, email và mật khẩu cho Jenkins của bạn và nhấp vào 'Lưu và tiếp tục'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22712%22%20height=%22750%22%3E%3C/svg%3E
Tiếp theo, nhập URL Jenkins vào cấu hình phiên bản. Trong ví dụ này, Jenkins chạy với proxy ngược httpd trên miền 'https://jenkins.howtoforge.local/'.
Nhấp vào 'Lưu và Hoàn tất' để hoàn tất cấu hình ban đầu của Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22712%22%20height=%22750%22%3E%3C/svg%3E
Sau khi cấu hình ban đầu của Jenkins hoàn tất, bạn sẽ được chuyển hướng đến bảng điều khiển Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22404%22%3E%3C/svg%3E
Bây giờ bạn đã hoàn tất cấu hình ban đầu của Jenkins. Với điều này trong tâm trí, bạn có thể tạo và thiết lập bản dựng Jenkins mới. Đọc tiếp để tìm hiểu về Jenkins Build.
Tạo bản dựng Jenkins đầu tiên
Trên bảng điều khiển Jenkins, nhấp vào menu Mục mới để tạo bản dựng Jenkins mới.data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22325%22%20height=%22212%22%3E%3C/svg%3E
Nhập tên dự án cho bản dựng mới này và chọn loại dự án. Trong ví dụ này, bạn sẽ tạo một bản dựng Jenkins mới "Bản dựng đầu tiên" với loại "Dự án Freestyle'.
Nhấp OK để tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22637%22%3E%3C/svg%3E
Trong phần "Chung", nhập mô tả dự án. Sau đó, chuyển đến phần "Các bước xây dựng".
Chọn đặc điểm xây dựng là "Thực thi shell" và nhập lệnh bash đơn giản bên dưới.
Mã:
echo "This is First build on jenkins"
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22484%22%3E%3C/svg%3E
Bây giờ bạn sẽ được chuyển hướng đến trang bản dựng Jenkins cho dự án "Bản dựng đầu tiên".
Nhấp vào "Bản dựng ngay" để bắt đầu và chạy bản dựng Jenkins. Sau khi chạy dự án, bạn sẽ thấy lịch sử xây dựng trong phần "Lịch sử xây dựng".
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22602%22%20height=%22686%22%3E%3C/svg%3E
Trong ảnh chụp màn hình sau, chỉ có một lịch sử xây dựng Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22584%22%20height=%22627%22%3E%3C/svg%3E
Nhấp vào lịch sử bản dựng số 1 để biết thêm chi tiết về kết quả đầu ra của bản dựng Jenkins. Bây giờ hãy nhấp vào "Console Output" để có được đầu ra chi tiết được tạo ra bởi bản dựng Jenkins.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22316%22%3E%3C/svg%3E
Bây giờ bạn đã biết cách tạo và chạy bản dựng Jenkins.
Kết luận
Trong bài viết này, bạn đã cài đặt Jenkins trên máy chủ Rocky Linux 9. Bạn cũng đã cài đặt và cấu hình máy chủ web Apache2/httpd làm proxy ngược cho Jenkins và bảo mật cài đặt Jenkins thông qua chứng chỉ SSL và firewalld.Ngoài ra, bạn cũng đã học cách cấu hình ban đầu cơ bản cho Jenkins và cách tạo và chạy bản dựng Jenkins thông qua giao diện web quản trị Jenkins.
Bây giờ bạn đã triển khai Jenkins hoàn toàn hoạt động, bạn có thể thêm dự án của mình và thiết lập bản dựng Jenkins cho ứng dụng của mình. Ngoài ra, bạn có thể mở rộng chức năng của Jenkins bằng cách thêm các plugin phù hợp với môi trường của mình.