fbpx Jenkins là gì? Hướng dẫn cách sử dụng Jenkins | thiết kế wed Skip to main content
Jenkins

Jenkins là gì? Hướng dẫn cách sử dụng Jenkins

Jenkins là gì?

Jenkins là một mã nguồn mở dùng để tích hợp liên tục và tự động hóa các tác vụ liên quan đến xây dựng, kiểm thử và triển khai phần mềm. Jenkins hỗ trợ nhiều phần mềm quản lý mã nguồn như Git, Subversion, Mercurial, ClearCase… Jenkins được viết bằng Java và chạy trên các servlet container như Apache Tomca

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.

Jenkin là gì

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 Jenkins:

Quá trình hình thành Jenkins là như sau:

Jenkins được phát triển từ một dự án mã nguồn mở tên là Hudson vào năm 2004 bởi Kohsuke Kawaguchi12.

Hudson được sử dụng rộng rãi bởi cộng đồng phát triển phần mềm và trở thành một sản phẩm của Oracle sau khi Oracle mua lại Sun Microsystems vào năm 201012.

Do xảy ra mâu thuẫn giữa Oracle và cộng đồng Hudson về quyền sở hữu thương hiệu, một số nhà phát triển Hudson đã tách ra và tạo ra Jenkins vào năm 2011.

Jenkins được đặt tên theo một nhân vật trong truyện Harry Potter12.

Jenkins tiếp tục phát triển và hỗ trợ nhiều tính năng mới như Jenkins Pipeline và Jenkinsfile

CI và CD là hai khái niệm quan trọng trong quy trình phát triển phần mềm hiện đại.

CI là gì? CD là gì?

CI là viết tắt của Continuous Integration, nghĩa là tích hợp liên tục. Đây là phương pháp yêu cầu các thành viên trong nhóm phát triển cần tích hợp công việc với nhau thường xuyên, mỗi ngày cần có tối thiểu một lần tích hợp. Mục tiêu của CI là kiểm tra và phát hiện sớm các lỗi, xung đột và cải thiện chất lượng mã nguồn123.

ci cd

CD có thể là viết tắt của Continuous Delivery hoặc Continuous Deployment, nghĩa là chuyển giao liên tục hoặc triển khai liên tục. Đây là giai đoạn tiếp nối của CI, thực hiện các bổ sung cho phần mềm đến khi sản phẩm phần mềm được phân phối đến tay người dùng cuối cùng. Mục tiêu của CD là tăng tốc quá trình phát hành và giảm thiểu rủi ro.

Plugin trong Jenkisn:

Plugin là các phần mở rộng trong Jenkins, hỗ trợ các dự án không dùng ngôn ngữ Java. Plugin có thể tích hợp hầu hết các hệ thống quản lý mã nguồn và cơ sở dữ liệu vào Jenkins. Nhiều công cụ build có plugin riêng12

Bạn có thể cài đặt plugin trong Jenkins bằng cách sử dụng Plugin Manager trong giao diện web hoặc sử dụng lệnh install-plugin trong Jenkins CLI3. Bạn có thể khám phá hơn 1800 plugin do cộng đồng đóng góp cho Jenkins tại đây

Một số nhược điểm của Jenkins là:

Production của opensource này khá khó khăn cho người dùng và việc phát triển các pipeline bằng Jenkinsfile yêu cầu phải lập trình bằng ngôn ngữ khai báo riêng của nó.

Nhiều pipeline của Jenkins thể hiện rằng việc lập trình, debug và bảo trì tương đối khó khan. Hệ thống open source giới hạn tài nguyên của máy tính, máy ảo hoặc container

About

Công ty thiết kế web app chuyên thiết kế web và các dịch vụ maketing digital, seo, google adword...