手把手教你玩轉 Gitea|在 Windows 系統上安裝 Gitea

Gitea 支援在 Windows 系統上安裝和使用。Gitea 本身作為一個單體應用程式,即點即用,如需長期駐留作為後台服務並開機運行就要依靠 Windows 服務工具 sc.exe

通過本文,你將學習到以下內容:

  • 安裝 Git for Windows
  • 註冊 Windows 服務
  • 啟用 Gitea 內置的 SSH 伺服器
  • 編輯 Windows 防火牆

環境準備

伺服器配置

本文所採用的伺服器配置如下,建議記憶體最少在 4GB 以上。OS 版本可以是 Windows 7/8/8.1/10/11 以及 Server 2012/2016/2019/2022,本文優先使用 Windows Server 2022 LTSC,其他系統版本操作類似。

OS Version CPU RAM
Windows Server LTSC 2022 4 Core 4GB

Git for Windows

Gitea 執行各項 Git 操作依賴的是背後的 git 命令行工具,因此在 Windows 平台上你需要安裝最新的 Git for Windows

下載安裝包://gitforwindows.org

資料庫

Gitea 支援的資料庫: SQLite、PostgreSQL、MySQL(MariaDB)、MSSQL

如果無特殊需求(例如集群化、高可用),建議一開始使用內置的 SQLite 作為資料庫搭建輕量級的 Gitea 伺服器,數據直接存儲在文件中,備份遷移都更加方便。

Gitea

Gitea 官網提供了預編譯的 Windows 平台二進位程式。

下載預編譯的二進位程式://dl.gitea.io/gitea/

進入下載頁面後,選擇適合你的 Windows 平台的二進位程式。

對於 Windows 而言, windows-4.0-amd64 適用於 64 位作業系統,windows-4.0-386 即 32 位作業系統。

另外,帶有 gogit-windows 名字的 Windows 版本程式使用了 gogit 用於解決在一部分在老舊版本的 Windows 上調用 git 後端導致的性能問題,但 gogit 本身也依賴後端的 git 程式,同時自身功能也有局限。換句話說,如果你的 Gitea 運行良好,性能不錯,就不必嘗試這個版本了。

安裝

Git for Windows

一般使用 Git for Windows 安裝包一步步安裝即可。當然,你也要確保 git 命令始終在 Windows 環境變數 PATH 中,檢查辦法是通過終端執行 git 命令。

PS C:\Users\Administrator> git --version
git version 2.38.0.windows.1

看到 git version 2.38.0.windows.1 說明程式調用成功,列印出了當前版本。

如果出現沒有找到 Git 命令,那麼打開,系統設置 – 環境變數 – 系統變數 – Path,手動添加 Git 程式目錄,例如 C:\Program Files\Git\cmd
系統 Path

安裝 Gitea

Gitea 的安裝路徑可以自定義,比如使用 C:\gitea。將前面準備好的二進位程式 (例如 gitea-1.17.2-windows-4.0-amd64.exe) 重命名並複製到 C:\gitea\gitea.exe。雙擊可執行程式啟動 Gitea。
啟動 gitea.exe

當你第一次運行 Gitea 時,你需要打開 //localhost:3000 根據指引完成 Gitea 的初始化安裝。這個步驟會創建配置文件並存儲到 C:\gitea\custom\conf\app.ini,稍後我們在註冊 Windows 服務時會用到。

初始配置

在 Windows 中 Gitea 的 RUN_USER (以用戶名運行)並不與 Windows 系統的賬戶系統關聯(這一點與 Linux 不同),因此你可以在此處填寫任意用戶名,推薦填寫 git
初始配置

最後,關閉 gitea.exe 窗口即結束 Gitea 主程式,也可以使用 Ctrl+C 結束。

將 Gitea 註冊為 Windows 服務

  1. 請以管理員身份打開命令提示符 (CMD),然後運行以下命令:
sc create gitea start= auto binPath= "\"C:\gitea\gitea.exe\" web --config \"C:\gitea\custom\conf\app.ini\""

請注意,start=binPath= 等號後面有空格

  1. 啟動服務
sc start gitea
  1. WIN + R 打開運行窗口,輸入 services.msc 並啟動 Windows 服務管理工具,可以找到你剛新建的 Gitea 服務,單機右鍵可以選擇 啟用停止 或更改 屬性

Windows 服務

如需刪除服務並重新創建,則使用 sc delete 命令。

sc delete gitea

配置

啟用 Gitea 內置的 SSH 伺服器

一般情況下,Windows 系統無需額外安裝 OpenSSH 服務。Gitea 內置了一個輕量級的 Go SSH 伺服器,安裝好之後可以通過修改配置文件手動開啟。

編輯 C:\gitea\custom\conf\app.ini, 找到 [server] 條目添加 START_SSH_SERVER = true 用於啟動內置的 SSH 服務。

[server]
START_SSH_SERVER = true

重啟 Gitea 服務使之生效。

編輯 Windows 防火牆

如果你的 Windows 系統禁止所有入站連接,你將無法通過伺服器的外部 IP 地址訪問 Gitea 實例。

解決辦法:

  1. 依次打開 控制面板\系統和安全\Windows Defender 防火牆\允許的應用。
  2. 點擊允許其他應用,點擊「瀏覽」選擇 C:\gitea\gitea.exe 並添加,這將允許 Gitea 通過防火牆接受入站連接。
  3. 防火牆高級設置中,你還可以精細化設置 Gitea 的 TCP 入站連接。