Khi tìm hiểu về lĩnh vực phần mềm bạn sẽ được tiếp cận với GitLab - một công cụ không thể thiếu với các đội nhóm phát triển dự án. Hãy cùng TotHost đào sâu thông tin về nền tảng này nhé!
1. Tổng quan về GitLab
1.1. GitLab là gì?
GitLab là một nền tảng mã nguồn mở quản lý mã nguồn và DevOps mạnh mẽ. Nó cung cấp các công cụ quản lý mã nguồn, theo dõi lỗi, kiểm tra mã và triển khai ứng dụng một cách hiệu quả. Nhờ giải pháp hữu ích mang lại nên GitLab nhận được sự ủng hộ đông đảo đến từ cộng đồng, trở thành một trong những nền tảng được các nhà phát triển yêu thích.
1.2. Lịch sử phát triển
Vào tháng 9 năm 2011, hai developer người Ukraine là Dmitriy Zaporozhets và Valery Sizov đã tạo ra GitLab với ý tưởng ban đầu là xây dựng một giải pháp lý mã code.
Khởi điểm là một dự án nhỏ được viết bằng ngôn ngữ Ruby và Go, sau đó nhanh chóng được cộng đồng phát triển tích hợp thêm nhiều công cụ DevOps. Hiện nay, công nghệ đã bao gồm Go, Ruby trên Rails, Vue.js và nó cũng được phân phối theo giấy phép MIT.
1.3. Các phiên bản của GitLab
Hiện tại, GitLab có 3 phiên bản chính:
- GitLab Community Edition (CE): Phiên bản mã nguồn mở dành cho cộng đồng, cung cấp qua Git từ kho lữu trữ GitLab
- GitLab Enterprise Edition (EE): Phiên bản dành cho doanh nghiệp, doanh nghiệp sử dụng phiên bản EE sẽ nhận được hỗ trợ từ chính nhà cung cấp trong quá trình cài đặt sử dụng.
- GitLab Continuous Intergration (CI): là giải pháp được nhóm phát triển GitLab tạo ra với khả năng tự động hoá quá trình kiểm tra và xây dựng mã nguồn khi có thay đổi.
2. Các tính năng nổi bật của GitLab
3.1. Protected Branches
Tính năng này giúp tăng bảo mật và cho khả năng giới hạn quyền truy cập vàp repository branches, chỉ cho phép người dùng được uỷ quyền thay đổi trực tiếp lên nhánh (branch) như push code, ghi (write), … Tóm gọn, có thể hiểu protected branches sẽ:
- Chặn việc push từ tất cả mọi người trừ user được cho phép và master.
- Ngăn chặn việc push code lên branch
- Không thể xoá branch
Tất đều yêu cầu được cấp quyền nếu muốn thực hiện thay đổi trực tiếp lên branch. Master branch sẽ mặc định là protected branch và user cần được Master cấp ít nhất một quyền để bảo mật branch.
3.2. Tầng vật lý
Tầng vật lý liên quan đến các yếu tố hạ tầng mà GitLab cần để hoạt động như kho lưu trữ xử lý các dự án, Nginx hoạt động giống front-desk, cơ sở dữ liệu là các file của metal file cabinets, GitLab-Shell thực hiện nhiệm vụ tạo đơn hàng từ máy fax (SSH) thay vì front-desk.
3.3. System Layout
GitLab là ứng dụng được viết bằng ngôn ngữ Ruby on Rails, nên nếu muốn hiểu về nó thì bạn cần biết phương thức vận hành của ngôn ngữ lập trình này. Thư mục home của người dùng Git là /home/git và khi cài đặt GitLab-Shell sẽ nằm ở thư mục /home/git/gitlab-shell và user có thể dùng kho dữ liệu qua SSH.
3.4. Components
Đây là sơ đồ kiến trúc Components của GitLab:
- Nginx: vai trò làm máy chủ proxy xử lý các yêu cầu HTTP và định tuyến tới các dịch vụ phía sau.
- Unicorn: máy chủ ứng dụng Ruby, xử lý các yêu cầu của user và gửi chúng đến Rails.
- Sidekiq: Thực hiện các nhiệm vụ không đồng bộ như việc gửi email, xử lý dữ liệu, ...
- PostgreSQL: Hệ quản trị cơ sở dữ liệu lưu trữ dữ liệu liên quan đến GitLab.
Đọc thêm:
4. Có nên sử dụng GitLab không?
Câu trả lời là có bởi những lí do sau đây:
- Opensource: Các nhà phát triển có thể sử dụng và tuỳ chỉnh nó hoàn toàn miễn phí với phiên bản CE, do đó sẽ tiếp cận đa dạng các dự án từ nhỏ đến lớn.
- Truy cập mã nguồn: Đơn giản tiện lợi cho các lập trình viên khi cần lưu trữ, tải lên và tải xuống code.
- Cộng đồng mạnh: GitLab sở hữu cộng đồng sử dụng đông đảo, tích cực bằng sự lắng nghe và phản hồi từ cộng đồng giúp GitLab ngày càng phát triển. Nhờ đó mà nhu cầu của người dùng ngày càng được cải thiện.
- Giải pháp dài hạn: Nhờ các tính năng được tích hợp như CI/CD cùng các dịch vụ phổ biến GitHub, Docker, Kubernetes nên cũng sẽ thuận tiện hơn cho sự mở rộng và phát triển dự án của bạn theo thời gian.
5. Cách tải xuống GitLab
Bạn có thể tải xuống và sử dụng GitLab trên cả Windows và Linux, hãy làm theo hướng dẫn dưới đây:
5.1. Đối với hệ điều hành Windows
Bước 1: Tải xuống từ trang web chính thức của GitLab:
Bước 2: Mở tệp cài đặt và tiến hành cài đặt
Bước 3: Sau khi cài đặt hoàn tất, mở trình duyệt web để truy cập giao diện nền tảng thông qua đường dẫn http://localhost hoặc http://127.0.0.1
5.2. Đối với hệ điều hành Linux
Bước 1: Mở Terminal, sử dụng lệnh
Bước 2: Sau khi lệnh chạy xong là quá trình cài đặt GitLab trên Linux đã thành công. Tương tự như cách truy cập trên Windows, mở trình duyệt web và truy cập vào địa chỉ http://localhost hoặc http://127.0.0.1
Qua bài viết “Tổng quan về GitLab - Nền tảng toàn diện cho dân DevOps” TotHost đã cung cấp cho các bạn những thông tin cơ bản xoay quanh nền tảng quản lý mã nguồn này. Nếu công việc của bạn liên quan đến DevOps hoặc lập trình, đây sẽ là công cụ hữu ích mà bạn không thể bỏ qua. Chúc các bạn thành công!