Hướng dẫn Bind Jenkins vào IIS trên Windows bằng Reverse Proxy
Mục tiêu
Cho phép truy cập Jenkins từ một subdomain (ví dụ
jenkins.tedu.com.vn) thay vì phải gõhttp://localhost:8080.Sử dụng IIS làm reverse proxy.
Cấu hình Jenkins lắng nghe mọi IP (
0.0.0.0) để truy cập từ bên ngoài.
Yêu cầu trước khi bắt đầu
Windows Server đã cài Jenkins (phiên bản mới).
IIS đã cài trên server.
Subdomain đã trỏ về IP server.
Quyền Admin trên Windows.
Bước 1: Cấu hình Jenkins lắng nghe mọi IP
Mở file
jenkins.xml(thường nằm trongC:\Program Files (x86)\Jenkinshoặc nơi bạn cài Jenkins).Tìm
<arguments>và chỉnh thành:
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --httpListenAddress=0.0.0.0</arguments>
Giải thích:
--httpPort=8080: cổng Jenkins sẽ lắng nghe.--httpListenAddress=0.0.0.0: cho phép tất cả các IP truy cập.
Lưu file và restart dịch vụ Jenkins bằng Services hoặc lệnh:
net stop jenkins
net start jenkins
Kiểm tra truy cập từ máy khác bằng
http://<IP_server>:8080.
Bước 2: Cài đặt IIS Reverse Proxy
2.1 Cài các module cần thiết
Mở Server Manager →
Add Roles and Features→ chọn:Web Server (IIS) nếu chưa cài.
Application Request Routing (ARR):
Cần để IIS làm reverse proxy.
URL Rewrite:
Dùng để chuyển hướng subdomain đến Jenkins.
2.2 Kích hoạt Reverse Proxy trong ARR
Mở IIS Manager.
Chọn server →
Application Request Routing Cache.Chọn Server Proxy Settings → check Enable proxy → Apply.
Bước 3: Tạo site trong IIS cho subdomain
Mở IIS Manager →
Sites→Add Website.Cấu hình:
Site name: Jenkins
Physical path: Có thể để bất kỳ thư mục trống (ví dụ
C:\inetpub\jenkins) vì IIS sẽ proxy.Binding:
Type:
httpIP address:
All UnassignedPort:
80Host name:
jenkins.tedu.com.vn
Nhấn OK.
Bước 4: Cấu hình URL Rewrite để proxy đến Jenkins
Chọn site Jenkins → double click
URL Rewrite.Chọn Add Rule(s)… →
Reverse Proxy.Nhập backend server:
http://localhost:8080Apply.
Optional: Check
Enable SSL Offloadingnếu dùng HTTPS.
Lưu ý: Nếu dùng HTTPS, cần cài SSL certificate cho subdomain trong Binding, sau đó trong ARR cũng phải chọn Enable SSL Offloading.
Bước 5: Kiểm tra và tinh chỉnh
Restart IIS:
iisreset
Truy cập
http://jenkins.tedu.com.vn.Nếu thấy Jenkins login page → thành công.
Nếu lỗi 404 hoặc không load được, kiểm tra:
URL Rewrite có rule đúng chưa.
Firewall mở port 80/443.
Jenkins đã lắng nghe
0.0.0.0:8080chưa.
Bước 6: Optional – Chặn truy cập trực tiếp IP/Port
Nếu muốn mọi người chỉ truy cập qua subdomain:
Trong Jenkins → Configure Global Security → Disable remote access từ IP trực tiếp.
Hoặc dùng firewall chặn port 8080 từ ngoài, chỉ cho IIS proxy.
Tips tối ưu
Luôn bật
Require SSLnếu public ra Internet.ARR hỗ trợ caching, load balancing nếu sau này có nhiều Jenkins node.
URL Rewrite có thể dùng để redirect HTTP → HTTPS tự động.
Nếu Jenkins chạy trên cổng khác ngoài 8080, nhớ update URL Rewrite.
Tác giả: Bạch Ngọc Toàn
Chú ý: Tất cả các bài viết trên TEDU.COM.VN đều thuộc bản quyền TEDU, yêu cầu dẫn nguồn khi trích lại trên website khác.
Bài viết liên quan
Lộ trình Fullstack .NET Developer 2026
Chào bạn, bước sang năm 2026, lộ trình của một Fullstack .NET Developer đã có những thay đổi quan trọng để thích nghi với sự lên ngôi của AI, điện toán đám mây và phiên bản .NET 10 (LTS) vừa ra mắt cuối năm 2025.
Đọc thêm
TỔNG QUAN LÝ THUYẾT & THÀNH PHẦN CỐT LÕI SYSTEM DESIGN
Các lý thuyết cốt lõi trong System Design
Đọc thêm
Cẩm nang Big-O: Thước đo hiệu năng thuật toán trong C#
Hiểu rõ Big-O từ O(1) đến O(n!) qua ví dụ C# thuần. Bí quyết tối ưu code, chọn đúng cấu trúc dữ liệu để hệ thống luôn chạy nhanh và ổn định.
Đọc thêm
Bản Đồ Tư Duy Cho Dev: Giải Mã Cấu Trúc Dữ Liệu & Giải Thuật Cốt Lõi
Đọc thêm
Các mẫu thiết kế (design patterns) phổ biến trong kiến trúc Microservices.
Các mẫu thiết kế (design patterns) phổ biến trong kiến trúc Microservices.
Đọc thêm
Hiểu về AI, LLM, RAG và Agentic RAG trong 15 phút
Trong vài năm gần đây, trí tuệ nhân tạo (AI) đã bùng nổ mạnh mẽ và trở thành tâm điểm của cả thế giới công nghệ. Nhưng đi kèm với nó là hàng loạt khái niệm mới như LLM, RAG, hay Agentic RAG khiến nhiều người mới bắt đầu cảm thấy lúng túng.
Đọc thêm
Hướng dẫn tự triển khai N8N trên CentOS bằng Docker Compose và NGINX
N8N là công cụ mã nguồn mở cho phép bạn tự động hóa quy trình làm việc (workflow automation) và tích hợp nhiều dịch vụ khác nhau mà không cần phải lập trình.
Đọc thêm
Hướng dẫn phân tích độ phức tạp thuật toán chi tiết
Độ phức tạp của giải thuật là một cách để đánh giá hiệu quả của một giải thuật dựa trên hai yếu tố chính là độ phức tạp thời gian và độ phức tạp không gian.
Đọc thêm
Bài 6. Các thao tác với XPath và Selector trong Selenium
Bài viết này hướng dẫn bạn làm việc XPath và Css Selector trong Selenium.
Đọc thêm
Bài 5. Các thao tác với Web Browser trong Selenium
Bài viết này hướng dẫn bạn làm việc sâu Web Browser trong Selenium.
Đọc thêm