Jenkins là một công cụ CI (Tích hợp liên tục) mã nguồn mở phổ biến, được sử dụng rộng rãi để phát triển dự án, triển khai và tự động hóa.
Bài viết này sẽ hướng dẫn bạn trong quá trình cài đặt Jenkins trên phiên bản máy chủ Vultr CentOS 7. Để tạo điều kiện cho khách truy cập, Nginx cũng sẽ được cài đặt làm proxy ngược cho Jenkins.
Điều kiện tiên quyết
Trước khi tiếp tục, bạn phải có:
- Đã triển khai một phiên bản máy chủ Vultr CentOS 7 từ đầu.
- Đăng nhập vào máy của bạn với tư cách là người dùng không root với các đặc quyền sudo.
Bước 1: Cập nhật hệ thống CentOS 7 của bạn
Một trong những thực tiễn tốt nhất của quản trị viên hệ thống Linux là luôn cập nhật hệ thống. Cài đặt các gói ổn định mới nhất, sau đó khởi động lại.
sudo yum install epel-release
sudo yum update
sudo reboot
Khi quá trình khởi động lại kết thúc, đăng nhập với cùng một người dùng sudo.
Bước 2: Cài đặt Java
Trước khi bạn có thể cài đặt Jenkins, bạn cần thiết lập một máy ảo Java trên hệ thống của mình. Tại đây, hãy cài đặt OpenJDK Runtime Môi trường 1.8.0 mới nhất bằng YUM:
sudo yum install java-1.8.0-openjdk.x86_64
Sau khi cài đặt, bạn có thể xác nhận nó bằng cách chạy lệnh sau:
java -version
Lệnh này sẽ cho bạn biết về môi trường thời gian chạy Java mà bạn đã cài đặt:
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
Để giúp các ứng dụng dựa trên Java định vị đúng máy ảo Java, bạn cần đặt hai biến môi trường: "JAVA_HOME" và "JRE_HOME".
sudo cp /etc/profile /etc/profile_backup
echo 'export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk' | sudo tee -a /etc/profile
echo 'export JRE_HOME=/usr/lib/jvm/jre' | sudo tee -a /etc/profile
source /etc/profile
Cuối cùng, bạn có thể in chúng để xem xét:
echo $JAVA_HOME
echo $JRE_HOME
Bước 3: Cài đặt Jenkins
Sử dụng repo YUM chính thức để cài đặt phiên bản ổn định mới nhất của Jenkins, 1.651.2tại thời điểm viết:
cd ~
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins
Bắt đầu dịch vụ Jenkins và thiết lập để chạy khi khởi động:
sudo systemctl start jenkins.service
sudo systemctl enable jenkins.service
Để cho phép khách truy cập truy cập vào Jenkins, bạn cần cho phép lưu lượng truy cập vào trên cổng 8080:
sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
Bây giờ, hãy kiểm tra Jenkins bằng cách truy cập địa chỉ sau từ trình duyệt web của bạn:
http://<your-Vultr-server-IP>:8080
Bước 4: Cài đặt Nginx (tùy chọn)
Để tạo điều kiện cho khách truy cập vào Jenkins, bạn có thể thiết lập proxy ngược Nginx cho Jenkins, vì vậy khách truy cập sẽ không còn cần nhập số cổng 8080 khi truy cập ứng dụng Jenkins của bạn.
Cài đặt Nginx bằng YUM:
sudo yum install nginx
Sửa đổi cấu hình của Nginx:
sudo vi /etc/nginx/nginx.conf
Tìm hai dòng dưới đây:
location / {
}
Chèn sáu dòng dưới đây vào phân đoạn {}:
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
Kết quả cuối cùng sẽ là:
location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
Lưu và đóng:
:wq
Bắt đầu và kích hoạt dịch vụ Nginx:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Cho phép lưu lượng trên cổng 80:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Cuối cùng, hãy truy cập địa chỉ sau từ trình duyệt web của bạn để xác nhận cài đặt của bạn:
http://<your-Vultr-server-IP>