• Downloading from our site will require you to have a paid membership. Upgrade to a Premium Membership from 10$ a month today!

    Dont forget read our Rules! Also anyone caught Sharing this content will be banned. By using this site you are agreeing to our rules so read them. Saying I did not know is simply not an excuse! You have been warned.

Gitab CI cơ chế hoạt động thế nào và làm sao để tăng tốc

Khái niệm CI/CD không còn xa lạ, khi đã xong hoàn tất, việc kiểm tra code trở thành nhu cầu thiết yếu với mọi người project. Lập trình viên có thể sử dụng Travis, Jenkin, Gitlab CI, hỗ trợ cho quá trình học tập

%2BGitab-CI-co-che-hoat-dong-the-nao-lam-sao-de-tang-toc-do.png


Hôm nay, chúng tôi xin giới thiệu về Gitlab CI, nền tảng hoạt động nó như thế nào, cùng là một vài tuỳ chỉnh giúp tốc độ xử lý của nó nhanh hơn và tối ưu tích hợp luôn

Xem thêm: viết phần mềm

Nền tảng Gitlab CI hoạt động thế nào

Xem thêm:
ngôn ngữ lập trình web

Để Gitlab công nhận repository cần ứng ụng CI, cần khi báo 1 file .gitlab-ci.yml nằm ở thư mục gốc. File này phải được đặt đúng tên và có định dạng hợp lệ, khi ấy gitlab mới xác định và áp dụng CI cho repository của bạn.


Xem thêm: lập trình website

Bất cứ khi nào bạn commit gì đó lên repository , GitLab sẽ tìm kiếm file .gitlab-ci.yml và bắt đầu công việc trên Runners theo những nhiệm vụ được định nghĩa trên file ".yml". Nội dung file gồm những section, lệnh thực thi, biến, ... mà bạn muốn thực hiện trong quá trình triển khai.

Lưu ý rằng: ".gitlab-ci.yml" là một tệp YAML vì vậy bạn cần chú ý đến thụt đầu dòng. Luôn sử dụng dấu cách, không phải tab.

Gitlab runner

Các nhiệm vụ được định nghĩa trong tệp ".gitlab-ci.yml" nhưng để thực hiện chúng cần tới Gitlab runner

Runner có thể là một chương trình, 1 container, nó thực thi những câu lệnh và báo kết quả trả về cho gitlab. Runner có nhiều loại, phân biệt dựa vào executor. Khi khởi tạo runner, việc chọn executor nào sẽ quyết định môi trường thực thi các câu lệnh trong file yml kể trên.

Để liên kết runner với gitlab, cần thực hiện đăng ký với mỗi repository áp dụng CI, token được lấy tại Settings ➔ CI / CD trong từng repo

Sau khi đăng ký thành công, runner sẽ thực hiện các câu lệnh được khai báo thành các pipeline, trong đó gồm các jobs được định nghĩa trong tệp ".gitlab-ci.yml

Tăng tốc việc thực thi

Quá trình biên dịch , xử lý, test, ... có thể mất hàng chục phút để hoàn thành, thậm chí hàng giờ, một số cấu hình dưới đây sẽ giúp rút ngắn thời gian đó.

1. Cài đặt Gitlab Local

Thay vì quản lý và triển khai dự án trên gitlab global, bạn có thể cài đặt gitlab và gitlab runner trên local. Cụ thể bạn có thể sử dụng docker cho quá trình đó, nó sẽ giúp việc thực hiện nhanh hơn do sử dụng tài nguyên trên chính các máy chủ của bạn.

2. Sử dụng trình điều khiển overlay2

Theo mặc định, khi sử dụng docker: dind, Docker sử dụng trình điều khiển vfs trên mọi lần chạy. Thay vào đó, sử dụng trình điều khiển overlay2 sẽ giúp quá trình thực thi nhanh hơn, việc cấu hình cũng rất đơn giản, dễ dàng khai báo trong tệp ".gitlab-ci.yml"

3. Tối ưu hóa source code

Thay vì sử dụng quá nhiều cài đặt phụ thuộc, hay biên dịch lại Dockerfile mỗi lần thực thi, bạn có thể tối ưu việc cài đặt thêm những thư viện trong quá trình biên dịch, hoặc sử dụng cache cho việc build docker image nhằm rút ngắn thời gian.

4. Sử dụng các job song song thay vì lần lượt các job

Điều đó thực sự hữu ích với các công việc có thể độc lập thực hiện mà không phải chờ kết quả của công việc khác

5. Hạn chế chia câu lệnh ra quá nhiều job

Bởi, trước mỗi job thực hiện sẽ có khoảng thời gian pending cho việc đó. Chính vì vậy, hãy gộp những câu lệnh có thể vào chung job, thời gian pending rút ngắn cũng không phải là ít. Lưu ý, không gộp chung quá nhiều câu lệnh, khi biên dịch 1 câu lệnh có lỗi, sẽ khiến cả job phải chạy lại.

6. Sử dụng cache của gitlab

Giả sử mỗi lần thực thi lại cần cài đặt đầy đủ nodee module cho một project nodejs, quá trình đó sẽ tốn rất nhiều thời gian, thay vào đó, Gitlab cho phép bạn sử dụng cache nhằm rút ngắn thời gian.
 

Facebook Comments

Similar threads
Thread starter Title Forum Replies Date
katy Android Cơ hội trúng Iphone 14 Pro khi tham gia chương trình “Chia sẻ cùng MobiFone Điện thoại di động 14
B hỏi về cơ chế antidetect Thảo luận chung 0
F Chiết khấu lên đến 35% khi trở thành Đại lý Fshare, bạn có đang bỏ lỡ cơ hội kinh doanh này? Thông tin khuyến mại Fshare 0
F CẢNH BÁO NGUY CƠ TIỀM ẨN KHI GETLINKS FSHARE TỪ WEBSITE KHÔNG CHÍNH THỐNG Tin tức, sự kiện thường ngày 0
katy Android Cơ hội trúng 10 triệu khi thanh toán trên Google Play bằng tài khoản di động MobiFone Điện thoại di động 16
tunglamed HOT: Cơ hội sở hữu iPad Pro 11 khi đăng ký gói cước TikTok Data của MobiFone Điện thoại di động 2
tunglamed Cơ hội sở hữu Iphone 11 khi tham gia đăng ký dịch vụ của MobiFone Điện thoại di động 3
tunglamed Cơ hội trúng điện thoại Samsung Galaxy S21 khi đăng ký gói dịch vụ MobifoneGo Điện thoại di động 0
haopro Nonstop Cơ Trưởng 2021 Ở Đây Chúng Tôi Chỉ Có Nhạc Bay Âm nhạc 0
tunglamed KHUYẾN MÃI 20% - CƠ HỘI KHÔNG THỂ BỎ LỠ Điện thoại di động 2
cuongpro9x Adobe Premiere dành cho người mới bắt đầu - cơ bản Thiết kế đồ họa 0
T Thành công Blockchain cơ hội cho niêm yết giao dịch Tin tức CNTT 0
T Giới thiệu và cài đặt Series Golang cơ bản Tin tức CNTT 0
haopro NST Nhac DJ - Vinahouse 2020 Set nhạc Full Thái Hoàng Bay phòng cùng cơ trưởng hot girl Âm nhạc 0
B Mobifone: Nạp tiền liền tay, cơ hội trúng ngay 01 TỶ Thông tin các mạng di động 7
haopro Nonstop 2019 tuyển tập các track Vinahouse cục bay gửi tặng các cơ trưởng đang bay Âm nhạc 0
B Cơ hội trúng ngay 100 triệu đồng khi mua Bphone 3, Phone 3 Pro tại cửa hàng MobiFone Thông tin các mạng di động 11
Admin Hướng dẫn kiếm tiền từ Facebook Ad Breaks cơ bản - Kiếm tiền từ tính năng nghỉ để quảng cáo Tut, tool, mmo 0
T Blockchain ETF cơ chế hoạt động thế nào ? Tin tức CNTT 0
B Cơ hội trúng xe ô tô VinFast khi nạp tiền MobiFone Thông tin các mạng di động 12
T Hoa Kỳ kém trong cơ hội làm chủ Blockchain Tin tức CNTT 0
filiallion Hướng dẫn Từng bước học lập trình PHP cơ bản qua dự án website giới thiệu sản phẩm PHP 2
T van bướm trong hệ van cơ điện Thảo luận chung 0
T Van công nghiệp cho hệ cơ điện tại Việt Nam Thảo luận chung 0
tunglamed Cơ hội trúng iPhone 8 khi Rút thăm may mắn cùng MobiFone NEXT Thông tin các mạng di động 10
C Địa chỉ Học nghề Nails, Dạy vẽ móng nghệ thuật chuyên nghiệp, tốt và uy tín ở Hà Nội cơ bản nâng cao Trò chuyện linh tinh 0
C Địa chỉ Dạy làm móng, Dạy nghề Nails cơ bản nâng cao uy tín và chuyên nghiệp ở Hà Nội Trò chuyện linh tinh 0
katy Hướng dẫn Rút thăm may mắn cùng MobiFone NEXT cơ hội trúng iphone X 256GB Thông tin các mạng di động 2
hunglata Youtube Rủ gái xinh bịt mắt sờ mó | Thách Thức Bịt Mắt Đoán Bộ Phận Trên Cơ Thể Video, clip 1
haopro Nonstop Nonstop nhạc sàn 2018 Lên Chuyên Cơ Bay Cùng Ước Mơ Âm nhạc 0
N học lập trình Java core từ cơ bản đến nâng cao Tin tức CNTT 0
L Bảng giá màn hình led ips 19,14,17... giá cực rẻ không mua bạn sẻ bỏ lở mất cơ hội Trò chuyện linh tinh 1
N Học lập trình Android từ cơ bản đến nâng cao ở đâu tốt nhất??? Tin tức CNTT 0
N học lập trình java core từ cơ bản đến nâng cao ở đâu??? Tin tức CNTT 1
N Học lập trình Android từ cơ bản đến nâng cao ở đâu tốt nhất??? Tin tức CNTT 2
N học lập trình Java core từ cơ bản đến nâng cao Tin tức CNTT 0
N khoá học lập trình di động android từ cơ bản đến nâng cao Tin tức CNTT 0
N Khóa học Lập trình C/C++ từ Cơ bản đến Nâng Cao tại Hà Nội và Hồ Chí Minh Kiến thức lập trình 0
N Học lập trình Android từ cơ bản đến nâng cao ở đâu tốt nhất??? Kiến thức lập trình 0
N Khóa học Lập trình C/C++ từ Cơ bản đến Nâng Cao tại Hà Nội và Hồ Chí Minh Tin tức CNTT 0
T 6 Phương Pháp Phối Màu Cơ Bản Trong Thiết Kế Web Mã nguồn web 0
T 5 Nhược Điểm Cơ Bản Cần Tránh Khi Thiết Kế Website Mã nguồn web 0
S Share Cách viết khi học php cơ bản Máy tính 1
tunglamed Hô biến cơ hội hiếm có khó tìm trở nên siêu thực chỉ có ở mConnect! Thông tin các mạng di động 8
P Cơ hội nhận hàng trăm giải thưởng hấp dẫn từ “Nhịp sống sôi động” Thông tin các mạng di động 9
L Cơ hội giảm 50% khi mua điện thoại tại cửa hàng bán lẻ Mobifone Tin tức, sự kiện thường ngày 4
trelatudo Cơ hội dành cho các Startup Phòng Game chuyên nghiệp và Game thủ Thảo luận chung 1
H Cách Dùng Shell Và Một Số Lệnh Cơ Bản Nhất Thủ thuật máy tính 0
B Viettel chúc mừng khách hàngtrúng thưởng chương trình “ Đăngký Internet Viettel có cơ hội rướcVespa Thông tin các mạng di động 0
S [Tut]Basic Hacking - Hacking cơ bản Exploit 0

Similar threads

New posts New threads New resources

Back
Top