Hướng dẫn cài đặt Gitea để có máy chủ Git cục bộ

Cập nhật lần cuối: 3 tháng 9 của 2026
  • Gitea là một giải pháp thay thế nhẹ nhàng cho GitLab và GitHub, tiêu tốn rất ít tài nguyên hệ thống.
  • Quá trình cài đặt dựa trên một tệp nhị phân có thể thực thi được quản lý như một dịch vụ thông qua SystemD.
  • Việc sử dụng máy chủ proxy ngược với Nginx là điều cần thiết để cho phép truy cập an toàn thông qua HTTPS.
  • Nó cho phép di chuyển các kho lưu trữ hiện có từ các nền tảng khác trong khi vẫn duy trì các vấn đề và thẻ.

Các giá đỡ máy chủ trong trung tâm dữ liệu, thể hiện cơ sở hạ tầng của một máy chủ Git cục bộ.

Nếu bạn mệt mỏi vì phải phụ thuộc vào các quy tắc, chi phí hoặc tính khả dụng của những gã khổng lồ như GitHub hay GitLab, thì việc xây dựng cơ sở hạ tầng riêng là lựa chọn tối ưu. Sở hữu một máy chủ Git tại nhà hoặc văn phòng riêng sẽ mang lại cho bạn quyền kiểm soát tuyệt đối: quyền kiểm soát mã nguồn , quản lý quyền truy cập toàn diện và sự yên tâm khi không bị giới hạn bởi bên thứ ba đối với các kho lưu trữ riêng tư của mình.

Trong số tất cả các lựa chọn hiện có, Gitea nổi bật như một viên ngọc quý. Đây là công cụ được viết bằng ngôn ngữ Go, giúp nó cực kỳ nhẹ và nhanh , lý tưởng cho những người không muốn dành 16 GB RAM cho máy chủ Git. Không giống như GitLab, một con tàu biển khổng lồ giàu tính năng nhưng ngốn nhiều tài nguyên, Gitea giống như một chiếc thuyền máy: nó đi thẳng vào vấn đề, tiêu thụ rất ít tài nguyên và cung cấp giao diện rất quen thuộc cho bất kỳ ai đã từng sử dụng GitHub.

So sánh nhanh: Gitea, GitLab và Forgejo

Kỹ sư phần mềm đang cấu hình máy chủ bằng máy tính xách tay trong phòng máy chủ.

Trước khi bắt đầu cài đặt, điều đáng hiểu là bạn nên biết mình đang chuẩn bị đối mặt với điều gì. GitLab là lựa chọn điển hình dành cho doanh nghiệp, lý tưởng cho các nhóm lớn cần tích hợp CI/CD, nhưng nó yêu cầu phần cứng mạnh mẽ. Mặt khác, Gitea là lựa chọn tốt nhất cho các máy chủ có cấu hình khiêm tốn hoặc các dự án cá nhân do dung lượng bộ nhớ sử dụng rất nhỏ. Cuối cùng, có Forgejo, một phiên bản cộng đồng phát triển từ Gitea; nếu bạn là người theo chủ nghĩa phần mềm tự do thuần túy và thích quản trị mở mà không có sự can thiệp của doanh nghiệp, thì đây là lựa chọn thay thế dành cho bạn.

  Máy chủ là gì và hoạt động như thế nào: Các loại và đặc điểm

Những gì bạn cần trước khi bắt đầu

Máy tính xách tay hiển thị các dòng mã trong không gian làm việc hiện đại, lý tưởng để minh họa việc quản lý kho lưu trữ Git.

Để đảm bảo mọi thứ hoạt động trơn tru, hãy chắc chắn rằng bạn có một máy chủ Linux (Ubuntu, Debian hoặc Rocky Linux) với quyền truy cập root. Điều cần thiết nữa là phải cài đặt Git trên máy, và mặc dù Gitea cho phép sử dụng SQLite, nhưng đối với môi trường sản xuất, PostgreSQL hoặc MariaDB được khuyến nghị để đảm bảo tính ổn định của dữ liệu.

Chuẩn bị nền tảng trong hệ thống

Hình ảnh cận cảnh đôi bàn tay đang lập trình trên bàn phím, thể hiện quá trình phát triển phần mềm và việc sử dụng Gitea.

Chạy Gitea với quyền root không phải là một ý tưởng hay vì lý do bảo mật. Tốt nhất là nên tạo một người dùng chuyên dụng. Bạn có thể làm điều này bằng cách chạy lệnh sau: adduser --system --shell /bin/bash --group --home /home/gitea gitea. Điều cần thiết là phải sử dụng /bin/bash làm trình thông dịch lệnh Vì Gitea cần tương tác với git-shell thông qua SSH. Nếu bạn chưa cài đặt Git, một lệnh đơn giản apt install git Sẽ giải quyết vấn đề nhanh chóng.

Cài đặt nhị phân và cấu trúc thư mục

Hình ảnh chi tiết các cáp Ethernet được kết nối với bộ chuyển mạch mạng, minh họa cấu hình mạng và proxy ngược.

Gitea có thể được cài đặt theo nhiều cách, nhưng cài đặt bằng tệp nhị phân là cách đơn giản nhất. Bạn nên tìm phiên bản ổn định mới nhất trên trang web chính thức của nó và tải xuống bằng [phương pháp/phương pháp]. wget en /usr/local/bin/giteacho sau này thực thi quyền bằng lệnh chmod +xĐể chương trình hoạt động chính xác, cần phải tạo một loạt các thư mục cụ thể: /etc/gitea để cấu hình và /var/lib/gitea Dành cho dữ liệu, nhật ký và tệp tùy chỉnh. Đừng quên điều chỉnh quyền sở hữu tài sản (chown) để người dùng gitea có thể viết thư cho họ.

Cấu hình cơ sở dữ liệu

Nếu bạn chọn PostgreSQL, ngoài việc tạo cơ sở dữ liệu, bạn sẽ cần cài đặt gói phần mềm và tạo một vai trò cụ thể với mật khẩu mạnh. giteadb Với mã hóa UTF8. Nếu bạn thích MariaDB, quy trình cũng tương tự: bạn tạo cơ sở dữ liệu và người dùng, đảm bảo rằng... Công cụ lưu trữ là InnoDB. và máy chủ đang lắng nghe trên cổng 3306.

  Hỗ trợ máy chủ MCP trong môi trường GNOME: hướng dẫn đầy đủ

Tự động hóa với SystemD

Để tránh phải khởi động Gitea thủ công mỗi khi khởi động lại máy chủ, tốt nhất nên tạo một tệp tin trên ổ đĩa. /etc/systemd/system/gitea.serviceTệp này cho hệ thống biết rằng Gitea phải được chạy như một dịch vụ.Xác định người dùng, nhóm và đường dẫn tệp nhị phân. Sau khi tạo xong, chỉ cần chạy lệnh. systemctl enable --now gitea và máy chủ sẽ bắt đầu lắng nghe, theo mặc định, trên cổng 3000.

Lần tiếp xúc đầu tiên với giao diện web

Khi bước vào http://tu-ip:3000Sau đó, bạn sẽ gặp trình hướng dẫn thiết lập. Đây là nơi bạn kết nối cơ sở dữ liệu (chỉ định máy chủ, tên người dùng và mật khẩu) và xác định các thiết lập cần thiết. cài đặt trang web chungVí dụ như tên phiên bản và URL cơ sở. Đây cũng là lúc cấu hình máy chủ SSH và quyết định xem bạn muốn cho phép bất kỳ ai đăng ký hay chỉ một số ít người dùng nhất định... tắt tính năng ghi nhật ký công khai Để giữ cho máy chủ được bảo mật.

Bảo mật và quyền truy cập chuyên nghiệp với Nginx

Việc truy cập Gitea thông qua cổng 3000 không hiệu quả và không an toàn. Giải pháp lý tưởng là thiết lập một máy chủ proxy ngược với Nginx . Điều này cho phép người dùng truy cập trang web thông qua một tên miền (ví dụ: git.yourdomain.com) và đảm bảo tất cả lưu lượng truy cập được mã hóa bằng chứng chỉ SSL Let's Encrypt . Trong cấu hình Nginx, chỉ cần chuyển hướng lưu lượng truy cập từ cổng 443 sang cổng 3000 của Gitea, thêm tiêu đề X-Forwarded-For để tránh mất địa chỉ IP thực của máy khách.

Quản lý người dùng và di chuyển mã

Nếu bạn đã tắt tính năng ghi nhật ký công khai, bạn có thể tạo quản trị viên đầu tiên bằng dòng lệnh với lệnh sau: gitea admin user createSau khi vào bên trong, bạn có thể thêm thông tin của mình. khóa SSH công khai Trong hồ sơ người dùng, bạn có thể sao chép kho lưu trữ mà không cần nhập mật khẩu mỗi lần. Nếu bạn đã có mã nguồn trên GitHub, Gitea có tính năng này. công cụ di chuyển tích hợp Nó tự động nhập không chỉ mã nguồn mà còn cả các vấn đề và thẻ.

  Cách tự động hóa quy trình làm việc với n8n và Docker

Bảo trì và điều chỉnh

Việc bảo trì Gitea vô cùng dễ dàng. Để cập nhật, chỉ cần tải xuống tệp nhị phân mới, thay thế tệp cũ và khởi động lại dịch vụ. Để sao lưu, hãy sử dụng lệnh sau: gitea dump Nó là người bạn tốt nhất của bạn, bởi vì nó tạo ra một tập tin nén chứa mọi thứCơ sở dữ liệu, cấu hình và kho lưu trữ. Đối với email, bạn có thể cấu hình máy chủ SMTP bên ngoài (chẳng hạn như Gmail) hoặc cài đặt Postfix trên máy chủ để nhận thông báo về yêu cầu kéo và cảnh báo.

Việc triển khai Gitea cho phép bạn có một nền tảng kiểm soát phiên bản mạnh mẽ, gọn nhẹ và hoàn toàn riêng tư, loại bỏ sự phụ thuộc vào các dịch vụ bên ngoài thông qua cài đặt dựa trên mã nhị phân, cơ sở dữ liệu được tối ưu hóa và máy chủ proxy ngược đảm bảo an ninh lưu lượng truy cập thông qua HTTPS.