Gitea là giải pháp tự lưu trữ, mã nguồn mở và miễn phí cho máy chủ Git. Gitea được viết bằng ngôn ngữ lập trình Go, một ứng dụng nhẹ, có sẵn dưới dạng gói nhị phân có thể cài đặt trên hầu hết các nền tảng bao gồm Windows, Linux và macOS. Đây là một trong những giải pháp thay thế mạnh mẽ, có khả năng mở rộng, nhanh, dễ sử dụng cho GitLab.
Gitea cung cấp nhiều tính năng bao gồm trình chỉnh sửa tệp kho lưu trữ, theo dõi lỗi và thời gian, phân nhánh kho lưu trữ, khóa tệp, wiki tích hợp, hợp nhất, Hỗ trợ nhiều cơ sở dữ liệu, Quy trình nâng cấp dễ dàng, Container Registry tích hợp và nhiều tính năng khác.
Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cài đặt Gitea từ tệp nhị phân với PostgreSQL trên Debian 11.
Đầu tiên, hãy tạo Kho lưu trữ PostgreSQL bằng lệnh sau:
Tiếp theo, bạn sẽ cần nhập khóa ký kho lưu trữ:
Bây giờ, hãy cài đặt PostgreSQL bằng cách sử dụng các lệnh sau:
Tiếp theo, hãy khởi động dịch vụ PostgreSQL, bật dịch vụ này khi khởi động hệ thống và kiểm tra trạng thái dịch vụ PostgreSQL bằng lệnh sau:
Tiếp theo, bạn cần chuyển từ lược đồ mã hóa md5 sang lược đồ 'SCRAM-SHA-256' để bảo mật tốt hơn. Nếu bạn muốn kết nối với PostgreSQL từ xa, thì bạn cần cho phép địa chỉ IP của mình trong tệp cấu hình PostgreSQL. Mở tệp Cấu hình để thực hiện thay đổi bằng lệnh sau:
Nếu bạn đã cài đặt phiên bản PostgreSQL khác, hãy thay đổi đường dẫn lệnh ở trên theo phiên bản đó.
Tiếp theo, hãy thay đổi các biến sau theo yêu cầu của bạn:
Lưu và thoát tệp rồi khởi động lại dịch vụ PostgreSQL để áp dụng các thay đổi.
Tiếp theo, Đăng nhập vào shell PostgreSQL bằng lệnh sau:
Sau đó, tạo vai trò người dùng và cơ sở dữ liệu cho Gitea bằng cách thực thi lệnh sau:
Tại đây, bạn cần đặt tên người dùng, tên cơ sở dữ liệu và mật khẩu của mình cho Gitea.
Tại thời điểm này, PostgreSQL của bạn đã thiết lập và sẵn sàng cho Gitea, hãy xác minh cài đặt xác thực trong tệp /etc/postgresql/14/main/pg_hba.conf.
Theo mặc định, PostgreSQL chấp nhận tất cả các kết nối cục bộ.
Nếu bạn muốn sử dụng giteadb từ xa, hãy thêm dòng sau với địa chỉ IP của bạn trong /etc/postgresql/14/main/pg_hba.conf
Xác minh cài đặt git bằng cách kiểm tra phiên bản Git:
Đầu ra:-
Tiếp theo, bạn cần đặt tên và địa chỉ email của mình cho Git.
Bạn có thể kiểm tra cấu hình Git của mình bằng cách sử dụng lệnh sau.
Đầu ra:-
Điều này sẽ tạo một người dùng git mới.
Tiếp theo, di chuyển tệp nhị phân Gitea đến đường dẫn hệ thống bằng lệnh sau:
Tiếp theo, đặt quyền thực thi cho tệp nhị phân Gitea bằng cách chạy lệnh sau vào thiết bị đầu cuối:
Tiếp theo, bạn sẽ cần tạo cấu trúc thư mục cho Gitea, để thực hiện, hãy chạy các lệnh sau:
Tiếp theo, cấp các quyền cần thiết để Gitea hoạt động bình thường bằng các lệnh sau:
Tiếp theo, tạo tệp dịch vụ systemd cho Gitea bằng lệnh sau:
Dán mã sau vào nó.
Lưu và thoát khỏi tệp. Sau đó tải lại daemon systemd và khởi động dịch vụ Gitea bằng lệnh bên dưới:
Tiếp theo, bạn cần bật dịch vụ Gitea khi khởi động lại hệ thống:
Tiếp theo, xác minh trạng thái của Gitea bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Như bạn thấy, Gitea được khởi động và chạy trên cổng 3000 theo mặc định. Bạn có thể xác minh cổng Gitea bằng lệnh sau:
Bạn sẽ thấy đầu ra như bên dưới:
Tiếp theo, điền các tham số bắt buộc như sau:
Cài đặt cơ sở dữ liệu
Loại cơ sở dữ liệu: PostgreSQL
Máy chủ: 127.0.0.1:5432
Tên người dùng: gitea
Mật khẩu: Nhập mật khẩu bạn đã chọn trong quá trình tạo vai trò Postgres.
Tên cơ sở dữ liệu: giteadb
SSL: Tắt
Cài đặt chung
Tiêu đề trang web: Tiêu đề bạn chọn.
Đường dẫn gốc của kho lưu trữ: /var/lib/gitea/data/repositories
Đường dẫn gốc của Git LFS: /var/lib/gitea/data/lfs
Chạy dưới dạng Tên người dùng: git
Tên miền máy chủ SSH: your_domain/IP
Cổng máy chủ SSH: 22
Gitea HTTP Listen Post: 3000
URL cơ sở Gitea: http://youripaddress:3000
Đường dẫn nhật ký: /var/lib/gitea/log
Ở giai đoạn này, bạn có thể cấu hình email, Máy chủ và Cài đặt của bên thứ ba hoặc bạn có thể thực hiện sau. Tuy nhiên, bạn nên cấu hình Tên người dùng
Quản trị viên
để đăng nhập vào Gitea. Do đó, hãy vào Cài đặt tùy chọn và nhập thông tin chi tiết về Cài đặt tài khoản quản trị viên và tạo 'Người dùng quản trị viên' cho Gitea.
Tiếp theo, nhấp vào nút 'Cài đặt Gitea'. Sau khi quá trình cài đặt hoàn tất thành công, bạn sẽ được chuyển hướng đến bảng điều khiển Gitea hiển thị ở trang sau:
Bây giờ, bạn có thể khám phá Gitea và từ tùy chọn Quản trị trang web từ tài khoản quản trị của mình, bạn có thể thiết lập các dịch vụ của bên thứ 3 khác như tích hợp thư mục hoạt động của windows với Gitea.
Để bật Thông báo qua Email, hãy mở tệp cấu hình Gitea bằng lệnh sau:
Tiếp theo, hãy chỉnh sửa phần sau trong tệp và thêm mã sau theo cài đặt email của bạn.
Lưu và thoát tệp rồi khởi động lại dịch vụ Gitea để áp dụng các thay đổi:
Đầu tiên, hãy dừng dịch vụ Gitea:
Tiếp theo, hãy tải xuống và cài đặt tệp nhị phân Gitea bằng lệnh sau:
Tiếp theo, hãy khởi động dịch vụ Gitea bằng lệnh sau:
Bây giờ, Gitea của bạn đã được cập nhật mà không có thời gian chết nào.
Gitea cung cấp nhiều tính năng bao gồm trình chỉnh sửa tệp kho lưu trữ, theo dõi lỗi và thời gian, phân nhánh kho lưu trữ, khóa tệp, wiki tích hợp, hợp nhất, Hỗ trợ nhiều cơ sở dữ liệu, Quy trình nâng cấp dễ dàng, Container Registry tích hợp và nhiều tính năng khác.
Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cài đặt Gitea từ tệp nhị phân với PostgreSQL trên Debian 11.
Điều kiện tiên quyết
- Máy chủ chạy Debian 11.
- Mật khẩu gốc được cấu hình trên máy chủ.
Bước 1 – Cập nhật hệ điều hành
Trước khi bắt đầu cài đặt Gitea, hãy chạy lệnh bên dưới để cập nhật hệ thống của bạn lên phiên bản mới nhất.
Mã:
sudo apt-get update -y
sudo apt-get upgrade -y
Bước 2 – Cài đặt và cấu hình PostgreSQL
Gitea hỗ trợ tất cả các cơ sở dữ liệu chính như MySQL, MariaDB, SQLite, MySQL và PostgreSQL, nhưng trong hướng dẫn này, PostgreSQL được sử dụng làm cơ sở dữ liệu Gitea.Đầu tiên, hãy tạo Kho lưu trữ PostgreSQL bằng lệnh sau:
Mã:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
Mã:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Mã:
sudo apt-get update
sudo apt-get -y install postgresql
Mã:
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo systemctl status postgresql
Tiếp theo, bạn cần chuyển từ lược đồ mã hóa md5 sang lược đồ 'SCRAM-SHA-256' để bảo mật tốt hơn. Nếu bạn muốn kết nối với PostgreSQL từ xa, thì bạn cần cho phép địa chỉ IP của mình trong tệp cấu hình PostgreSQL. Mở tệp Cấu hình để thực hiện thay đổi bằng lệnh sau:
Mã:
sudo vim /etc/postgresql/14/main/postgresql.conf
Tiếp theo, hãy thay đổi các biến sau theo yêu cầu của bạn:
Mã:
listen_addresses = 'localhost, 134.122.38.45'
password_encryption = scram-sha-256
Mã:
sudo systemctl restart postgresql
Mã:
sudo -u postgres psql
Mã:
postgres=# TẠO VAI TRÒ gitea VỚI MẬT KHẨU ĐĂNG NHẬP 'secure@123';
postgres=# TẠO CƠ SỞ DỮ LIỆU giteadb;
postgres=# CẤP TẤT CẢ CÁC QUYỀN TRÊN CƠ SỞ DỮ LIỆU giteadb CHO gitea;
postgres=# thoát
Tại thời điểm này, PostgreSQL của bạn đã thiết lập và sẵn sàng cho Gitea, hãy xác minh cài đặt xác thực trong tệp /etc/postgresql/14/main/pg_hba.conf.
Theo mặc định, PostgreSQL chấp nhận tất cả các kết nối cục bộ.
Mã:
lưu trữ tất cả tất cả 127.0.0.1/32 scram-sha-256
Mã:
host giteadb gitea 134.122.38.0/32 scram-sha-256
Bước 3 – Cài đặt và cấu hình Git
Tiếp theo, cài đặt git bằng lệnh sau:
Mã:
sudo apt install git
Mã:
git --version
Mã:
git version 2.30.2
Mã:
git config --global user.name "Tên của bạn"
git config --global user.email "[emailprotected]”
Mã:
git config --list
Mã:
user.name=Tên của bạn
[emailprotected]
Bước 4 – Tạo người dùng git cho Gitea
Bây giờ, bạn sẽ cần tạo một người dùng Gitea. Bạn có thể thực hiện việc này bằng lệnh sau:
Mã:
sudo adduser \
--system \
--shell /bin/bash \
--gecos 'Git Version Control' \
--group \
--disabled-password \
--home /home/git \
git
Bước 5 – Cài đặt và cấu hình Gitea
Truy cập Trang tải xuống của Gitea và tải xuống phiên bản mới nhất của tệp nhị phân Gitea có sẵn. Tại thời điểm viết hướng dẫn này, phiên bản mới nhất của Gitea là 1.15.7. Bạn có thể thay đổi biến VERSION trong lệnh bên dưới để cài đặt bất kỳ phiên bản nào khác.
Mã:
cd /tmp
Mã:
GITEAVERSION=1.15.7
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
Mã:
sudo mv /tmp/gitea /usr/local/bin
Mã:
chmod +x /usr/local/bin/gitea
Mã:
sudo mkdir -p /etc/gitea
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
Mã:
sudo chown -R git:git /var/lib/gitea/
sudo chown root:git /etc/gitea
sudo chmod -R 750 /var/lib/gitea/
sudo chmod 770 /etc/gitea
Mã:
vim /etc/systemd/system/gitea.service
Mã:
[Unit]
Description=Gitea
After=syslog.target
After=network.target
After=postgresql.service
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
[Install]
WantedBy=multi-user.target
Mã:
sudo systemctl daemon-reload
Mã:
sudo systemctl start gitea
Mã:
sudo systemctl enable gitea
Mã:
sudo systemctl status gitea
Như bạn thấy, Gitea được khởi động và chạy trên cổng 3000 theo mặc định. Bạn có thể xác minh cổng Gitea bằng lệnh sau:
Mã:
netstat -tulpan | grep 3000
Mã:
tcp6 0 0 :::3000 :::* LISTEN 43778/gitea
Bước 6 – Truy cập Giao diện web Gitea
Gitea hiện đang hoạt động và lắng nghe trên cổng 3000 theo mặc định. Mở trình duyệt của bạn và nhập https://YOURIPADDRESS:3000.Tiếp theo, điền các tham số bắt buộc như sau:
Cài đặt cơ sở dữ liệu
Loại cơ sở dữ liệu: PostgreSQL
Máy chủ: 127.0.0.1:5432
Tên người dùng: gitea
Mật khẩu: Nhập mật khẩu bạn đã chọn trong quá trình tạo vai trò Postgres.
Tên cơ sở dữ liệu: giteadb
SSL: Tắt
Cài đặt chung
Tiêu đề trang web: Tiêu đề bạn chọn.
Đường dẫn gốc của kho lưu trữ: /var/lib/gitea/data/repositories
Đường dẫn gốc của Git LFS: /var/lib/gitea/data/lfs
Chạy dưới dạng Tên người dùng: git
Tên miền máy chủ SSH: your_domain/IP
Cổng máy chủ SSH: 22
Gitea HTTP Listen Post: 3000
URL cơ sở Gitea: http://youripaddress:3000
Đường dẫn nhật ký: /var/lib/gitea/log
Ở giai đoạn này, bạn có thể cấu hình email, Máy chủ và Cài đặt của bên thứ ba hoặc bạn có thể thực hiện sau. Tuy nhiên, bạn nên cấu hình Tên người dùng
Quản trị viên
để đăng nhập vào Gitea. Do đó, hãy vào Cài đặt tùy chọn và nhập thông tin chi tiết về Cài đặt tài khoản quản trị viên và tạo 'Người dùng quản trị viên' cho Gitea.
Tiếp theo, nhấp vào nút 'Cài đặt Gitea'. Sau khi quá trình cài đặt hoàn tất thành công, bạn sẽ được chuyển hướng đến bảng điều khiển Gitea hiển thị ở trang sau:
Bây giờ, bạn có thể khám phá Gitea và từ tùy chọn Quản trị trang web từ tài khoản quản trị của mình, bạn có thể thiết lập các dịch vụ của bên thứ 3 khác như tích hợp thư mục hoạt động của windows với Gitea.
Bước 7 – Thiết lập Thông báo qua Email
Bạn có thể bật Thông báo qua Email trong Gitea bằng Sendmail hoặc qua dịch vụ Email của bên thứ 3 như Amazon SES, Sendgrid.Để bật Thông báo qua Email, hãy mở tệp cấu hình Gitea bằng lệnh sau:
Mã:
vim /etc/gitea/app.in
Mã:
[mailer]
ENABLED = true
FROM = [emailprotected]
MAILER_TYPE = smtp
HOST = mail.example.com:587
IS_TLS_ENABLED = true
USER = [emailprotected]
PASSWD = password
Mã:
sudo systemctl restart gitea
Bước 10 – Cập nhật Gitea
Nâng cấp Gitea là một quá trình dễ dàng và bạn chỉ cần tải xuống và thay thế tệp nhị phân Gitea.Đầu tiên, hãy dừng dịch vụ Gitea:
Mã:
sudo systemctl stop gitea
Mã:
cd /tmp
GITEAVERSION=LATESTVERSION
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
sudo mv gitea /usr/local/bin
sudo chmod +x /usr/local/bin/gitea
Mã:
sudo systemctl start gitea