Gitea 安裝流程
BUBU 因之前有測試 GitLab 發現到他資源吃很重而且功能還強大,用不了這麼多功能,因此無意中看到有人使用 Gitea 這套服務使用,介面跟 GitHub 差不多一樣並且也有中文化,重點該服務的資源吃不重,這是用 Go 語言寫出來的服務,官方文件上可以參考看看與其他服務功能做功能比較。
運行環境
環境都是在 「Proxmox VE 」 虛擬系統上架設,都是以 「 LXC 」模式為主,除非有特殊狀況會告知使用 「 VM 」 模式
- 系統環境: Debian 10
- Web 服務: Nginx 1.18
- 資料庫服務: MariaDB 10.5
安裝或測試過程
- 安裝 Gitea 很簡單,只要先安裝好 web 服務及資料庫,系統再做調整就可以運行了
安裝 Web 服務
- 安裝 Nginx 必要套件
sudo apt install curl gnupg2 ca-certificates lsb-release
- 增加來源庫
# 來源庫新增加穩定版 nginx 服務
echo "deb http://nginx.org/packages/debian `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list
- 導入官方金鑰來確認該套件安全性
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -
- 驗證現在的金鑰是否正確
sudo apt-key fingerprint ABF5BD827BD9BF62
- 輸出的指紋如下 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62
pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62
uid [ unknown] nginx signing key <[email protected]>
- 安裝 Nginx 服務
sudo apt update
sudo apt install nginx
- 啟動及自動啟動服務
systemctl start nginx ; systemctl enable nginx
MairaDB 安裝
- 安裝密鑰及來源庫 官方下載點
sudo apt-get install software-properties-common dirmngr
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] https://ftp.ubuntu-tw.org/mirror/mariadb/repo/10.5/debian buster main'
- 安裝 MariaDB 服務
sudo apt update
sudo apt install mariadb-server
- 啟動服務
systemctl enable mariadb ; systemctl start mariadb
- 如果無法正常啟動話,因為環境是 LXC 造成無法正常啟動,所以要先關掉 LXC 服務,去做設定,如圖下
- 資料庫設定
# 登入資料庫裡設定資表及權限
mysql -u root -p
# 在資料庫裡新增BookStack表單
CREATE DATABASE IF NOT EXISTS gitea DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 密碼請自己輸入好記錄的密碼
GRANT ALL PRIVILEGES ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
# 重新載入設定值
FLUSH PRIVILEGES;
# 離開資料庫
exit
Gitea 安裝
- 下載 Gitea 服務
wget -O /usr/bin/gitea https://github.com/go-gitea/gitea/releases/download/v1.13.2/gitea-1.13.2-linux-amd64
- Gitea 設定成能執行
chmod +x /usr/bin/gitea
- 新增加 Gitea 使用者跟群組
adduser --system --group --disabled-password git
- 在 home 新增加目錄並且給序權限
mkdir -p /home/git/{custom,data,log}
chown -R git:git /home/git
chmod -R 750 /home/git
- 設定 Gitea 服務
vim /etc/systemd/system/gitea.service
[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
Requires=mariadb.service
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/home/git
ExecStart=/usr/bin/gitea web --config /home/git/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/home/git
[Install]
WantedBy=multi-user.target
- 啟動 Gitea 服務
systemctl enable --now gitea.service
- 確認 Gitea 目前狀態
systemctl status gitea.service
-
開啟網頁連線到
http://ip/install
日後會在補充畫面 -
連線成功的畫面
- 進來之後的畫面
Gitea 設定
- Gitea 設定檔都在
/home/git/app.ini