Jenkins Là Gì? Build Và Deploy Code Nhanh Chóng Với ... - TopDev
Có thể bạn quan tâm
Jenkins là gì?
Jenkins là một opensource dùng để thực hiện chức năng tích hợp liên tục (gọi là CI – Continuous Integration) và xây dựng các tác vụ tự động hóa.
Nó tích hợp các source code của các members trong team lại nhanh chóng một cách liên tục, theo dõi sự thực thi và trạng thái thông qua các bước kiểm thử (Integration test, units test). Tất nhiên là nhằm giúp sản phẩm chạy ổn định.

Quá trình hình thành
Năm 2004, Kohsuke Kawaguchi – một lập trình viên Java tại Sun vào một ngày cảm thấy mệt mỏi vì các mã nguồn của mình thường xuyên bị fail.
Ông ta muốn tìm cách biết là trước khi đưa code vào deploy, liệu code có hoạt động hay không.
Continuous Integration with Jenkins - Bài 1: Giới thiệu về CI và Jenkins Xây dựng hệ thống Jenkins với hàng chục nghìn jobVì vậy, Kawaguchi đã xây dựng một hệ thống server tự động hóa cho chính server và cho Java có thể kiểm tra tình trạng code trước khi deploy, được gọi là Hudson. Hudson trở nên phổ biến tại Sun và thịnh hành sang các công ty khác dưới dạng opensource.
Đến năm 2011, với việc Oracle mua lại Sun gây nên sự tranh chấp với cộng đồng nguồn mở, Jenkins được forked từ Hudson sau đó. Cả Hudson và Jenkins đều tiếp tục tồn tại, mặc dù Jenkins có phần phổ biến hơn.
Năm 2014 Kawaguchi trở thành CTO của CloudBees, một công ty cung cấp các sản phẩm dựa trên nền tảng Jenkins.
CI là gì? CD là gì?

CI là viết tắt của Continuous Integration
Là tích hợp liên tục, nhằm liên tục tích hợp các source code của các thành viên trong team lại một cách nhanh chóng.
Giúp kiểm soát được tình hình phát triển thông qua các bước kiểm thử unit tests, Integration tests.
Chu trình làm việc
- Bước đầu tiên, các thành viên trong team dev sẽ bắt đầu pull code mới nhất từ repo về branch để thực hiện các yêu cầu chức năng nhất định.
- Tiếp đó là quá trình lập trình và test code để đảm bảo chất lượng của chức năng cũng như toàn bộ source code.
- Thành viên code xong thì sẵn sàng cho việc commit vào branch develop của team.
- Thành viên cập nhật code mới từ repo về local repo
- Merge code và giải quyết conflict.
- Build và đảm bảo code pass qua các tests dưới local.
- Commit code lên repo
- Máy chủ CI lắng nghe các thay đổi code từ repository và có thể tự động build/test, sau đó đưa ra các thông báo (pass/failure) cho các thành viên.
CD là viết tắt của Continuous Delivery
Xây dựng hệ thống Jenkins với hàng chục nghìn jobContinuous Delivery là chuyển giao liên tục, là 1 tập hợp các kỹ thuật để triển khai tích hợp souce code trên môi trường staging ( một môi trường rất giống với môi trường production).
Với cách này ta có thể đảm bảo source code được review, kiểm thử một cách tỉ mỉ trước khi deploy lên môi trường production.
Build, deploy với Jenkins và Docker
Các bạn có thể tham khảo thêm về Image này:
https://hub.docker.com/r/topdevvietnamit/jenkins_ciCó thể bạn muốn xem thêm:
- Triển khai CI/CD với Gitlab
- PHP build và deploy với Jenkins và Docker
- Kubernetes là gì? Cùng tìm hiểu cách hoạt động
- DevOps trend – 8 dự đoán trong nhiều năm tới
Xem thêm Top Việc làm Developer trên TopDev
Từ khóa » Jenkins Nghĩa Là Gì
-
Jenkins Là Gì? Tổng Hợp Kiến Thức Về Jenkins Nên Nắm Rõ - ITNavi
-
Jenkins Là Gì? Mối Liên Hệ Của Jenkins Với CI Và CD - Teky
-
Jenkins Là Gì? Định Nghĩa, Khái Niệm - LaGi.Wiki
-
Jenkins Là Gì ? Tìm Hiểu Những ứng Dụng Mà Jenkins Mang Lại
-
Jenkins Là Gì? Cách Cài đặt Jenkins Trên Windows - Vietnix
-
Giới Thiệu Về Jenkins: Một Open Source Continuous Integration Server
-
Jenkins Là Gì? Mối Liên Hệ Của Jenkins Với CI Và CD
-
Jenkins Là Gì? Tìm Hiểu Chi Tiết Về Phần Mềm Jenkins
-
Jenkins Là Gì? – RenovaCloud %
-
Jenkin Là Gì ? Định Nghĩa, Khái Niệm Jenkins Là Gì - Oimlya
-
Build, Deploy Tự động Với Jenkins - Có Nghĩa Là Gì, Ý Nghĩa La Gi
-
Jenkins Là Gì? Mô Hình Kiểm Tra Code Tự động Nổi Tiếng - Bizfly Cloud
-
Tìm Hiểu Về Jenkins Là Gì ? Mối Liên Hệ Của Jenkins Với Ci Và Cd
-
Jenkins Là Gì? Tổng Hợp Kiến Thức Về Jenkins Bạn Cần Nắm Rõ