- vừa được xem lúc

Bài 5: Cấu hình Jenkins trên Ubuntu 22.04 và viết Pipeline Build Service

0 0 20

Người đăng: DUY TRAN

Theo Viblo Asia

Jenkins là một máy chủ tự động hóa nguồn mở, tự động hóa các tác vụ kỹ thuật lặp đi lặp lại liên quan đến việc tích hợp và phân phối phần mềm liên tục. Jenkins dựa trên Java, được cài đặt từ các gói Ubuntu hoặc bằng cách tải xuống và chạy tệp lưu trữ ứng dụng web (WAR) của mình-một bộ sưu tập các tệp tạo nên một ứng dụng web hoàn chỉnh để chạy trên máy chủ.

Trong hướng dẫn này, bạn sẽ cài đặt Jenkins trên Ubuntu 22.04, bắt đầu máy chủ phát triển và tạo người dùng quản trị để bắt đầu khám phá tự động hóa Jenkins. Vào cuối hướng dẫn này, bạn sẽ có một máy chủ Jenkins không có bảo đảm sẵn sàng để triển khai phát triển.

Yêu Cầu hệ thống

  • Một máy chủ Ubuntu 22.04 được cấu hình với người dùng sudo không root và tường lửa bằng cách làm theo hướng dẫn thiết lập máy chủ ban đầu của Ubuntu 22.04.Ở đây thì mình yêu cầu bạn nên bắt đầu với ít nhất 1 GB RAM. Bạn có thể tham khảo yêu cầu phần cứng ở đưỡng dẫn: https://www.jenkins.io/doc/book/scaling/hardware-recommendations/.
  • Đã cài đặt Oracle JDK 11.

Bước 1: Cài đặt Oracle JDK 11

Để cài đặt phiên bản OpenJDK của Java, trước tiên hãy cập nhật chỉ mục gói apt của bạn:

sudo apt update

Tiếp theo, kiểm tra xem Java đã được cài đặt chưa:

java -version

Nếu Java hiện chưa được cài đặt, bạn sẽ nhận được kết quả sau:

Output
Command 'java' not found, but can be installed with: sudo apt install default-jre # version 2:1.11-72build1, or
sudo apt install openjdk-11-jre-headless # version 11.0.14+9-0ubuntu2
sudo apt install openjdk-17-jre-headless # version 17.0.2+8-1
sudo apt install openjdk-18-jre-headless # version 18~36ea-1
sudo apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1

Thực hiện lệnh sau để cài đặt JRE từ OpenJDK 11:

sudo apt install openjdk-11-jre-headless 

JRE sẽ cho phép bạn chạy hầu hết các phần mềm Java.

Xác minh cài đặt với:

java -version
Output
openjdk version "11.0.14" 2022-01-18
OpenJDK Runtime Environment (build 11.0.14+9-Ubuntu-0ubuntu2)
OpenJDK 64-Bit Server VM (build 11.0.14+9-Ubuntu-0ubuntu2, mixed mode, sharing)

Như vậy thì bạn đã cài đặt OpenJDK 11 thành công.

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

Phiên bản Jenkins đi kèm với các gói Ubuntu mặc định thường là phiên bản mới nhất.

Đầu tiên, thêm khóa kho lưu trữ vào hệ thống của bạn:

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key |sudo gpg --dearmor -o /usr/share/keyrings/jenkins.gpg

Tiếp theo, hãy thêm địa chỉ kho lưu trữ gói Debian vào sources.list của máy chủ:

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'

Phần [signed-by=/usr/share/keyrings/jenkins.gpg] của dòng đảm bảo rằng apt sẽ xác minh các tệp trong kho lưu trữ bằng khóa GPG mà bạn vừa tải xuống.

Sau khi cả hai lệnh đã được nhập, hãy chạy cập nhật APT để APT sẽ sử dụng kho lưu trữ mới.

sudo apt update

Cuối cùng, cài đặt Jenkins bằng lệnh :

sudo apt install jenkins

Bây giờ Jenkins và các phần phụ thuộc của nó đã sẵn sàng, chúng tôi sẽ khởi động máy chủ Jenkins

Bước 3: Start Jenkins

Bây giờ Jenkins đã được cài đặt, hãy bắt đầu bằng cách sử dụng systemctl:

sudo systemctl start jenkins.service

systemctl không hiển thị đầu ra trạng thái, nên chúng tôi sẽ sử dụng lệnh status để xác minh rằng Jenkins đã bắt đầu thành công:

sudo systemctl status jenkins

Nếu mọi thứ suôn sẻ, phần đầu của đầu ra trạng thái cho thấy dịch vụ đang hoạt động và được định cấu hình để bắt đầu khi khởi động:

Output
● jenkins.service - Jenkins Continuous Integration Server Loaded: loaded (/lib/systemd/system/jenkins.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2023-01-19 16:07:28 UTC; 2min 3s ago Main PID: 88180 (java) Tasks: 42 (limit: 4665) Memory: 1.1G CPU: 46.997s CGroup: /system.slice/jenkins.service └─88180 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080

Bây giờ Jenkins đã hoạt động và chạy, bay giờ bạn cần phải bật tường lửa (Firewall) và sử dụng.

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

Theo mặc định, Jenkins chạy trên cổng 8080. Mở cổng đó bằng ufw:

sudo ufw allow 8080

Kiểm tra trạng thái của UFW để xác nhận các quy tắc mới:

sudo ufw status

Bạn sẽ thấy rằng các truy cập được phép chuyển đến cổng 8080 từ mọi nơi:

Output
Status: active To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
8080 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
8080 (v6) ALLOW Anywhere (v6)

Với việc cài đặt Jenkins và cấu hình tường lửa, bạn đã hoàn tất giai đoạn cài đặt và có thể tiếp tục cấu hình Jenkins.

Bước 5: Thiết lập ban đầu cho Jenkins

Để thiết lập cài đặt của bạn, hãy truy cập Jenkins trên cổng mặc định của nó, 8080, sử dụng tên miền hoặc địa chỉ IP máy chủ của bạn: http://host:8080 (Host là ip của máy host)

Bạn sẽ nhận được màn hình Mở khóa Jenkins, hiển thị vị trí của mật khẩu ban đầu:

Trong cửa sổ terminal, sử dụng lệnh cat để hiển thị mật khẩu:

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

Sao chép mật khẩu chữ và số 32 ký tự từ terminal và dán nó vào trường mật khẩu , sau đó nhấp vào Tiếp tục.

Màn hình tiếp theo hiển thị tùy chọn cài đặt các plugin được đề xuất hoặc chọn các plugin cụ thể:

Ở đây mình khuyên các bạn sử dụng Install suggested plugins để tiếp tục tiến trình cài đặt

Tiếp tục chờ đợi tiến trình cài đặt

Sau khi quá trình cài đặt hoàn tất, sẽ đến bước tạo user admin

Tiếp tục nhập username với password

sau đó nhấp vào "Save and Finish" để hoàn thành cài đặt

Như vậy mình đã cài đặt và thiết lập ban đầu cho jenkins xong rồi, tiếp tục thì mình sẽ viết bộ build image service01 và service02

Bình luận

Bài viết tương tự

- vừa được xem lúc

Docker: Chưa biết gì đến biết dùng (Phần 1- Lịch sử)

1. Vì sao nên sử dụng. . .

0 0 89

- vừa được xem lúc

Docker: Chưa biết gì đến biết dùng (Phần 2 - Dockerfile)

1. Mở đầu.

0 0 53

- vừa được xem lúc

Cách Tạo Và Sử Dụng Bash Script Cơ Bản Trong Ubuntu

Bash scripting là một phần cực kỳ mạnh mẽ và hữu ích của phát triển và quản trị hệ thống. Lần đâu tiên làm việc với nó có thể gây cho bạn cảm giác sợ hải và phức tạp, mình hy vọng hướng dẫn này sẽ giúp có những hiểu biết cơ bản về bash script để không bị bở ngở khi làm việc với nó.

0 0 45

- vừa được xem lúc

Các command trên ubuntu (chiếm 80%) - phần 5

Hello 500 ae, sau 4 số trong seri này mình thấy có vẻ ae có hứng thú đọc chủ đề này ghê. Hi vọng những gì mình tìm hiểu được sẽ giúp ích được cho nhiều bạn hơn.

0 0 35

- vừa được xem lúc

Các command trên ubuntu (chiếm 80%) - phần 4

Sau một kì nghỉ tết trong thời buổi đại dịch vừa qua. Không còn những buổi dong chơi đi chúc tết nữa. Ở nhà ra số tiếp theo cho anh em đây. Dưới đây sẽ là 2 command được sử dụng nhiều nhất khi sử dụng file.

0 0 27

- vừa được xem lúc

Tài khoản người sử dụng và phân quyền truy cập tệp trên Ubuntu (P1)

Hôm nay, mình sẽ giới thiệu cho mọi người về Tài khoản người sử dụng (NSD) và phân quyền truy cập trên Ubuntu. Bài viết này được chia thành hai phần: phần một nói về tài khoản người sử dụng và phần hai nói về quyền truy cập trên Ubuntu.

0 0 31