跳到主要内容
版本:26.4.1

在 Windows 上安装(Install on Windows)

通过调整上游 Gitea Windows 安装说明,将 Gitea Enterprise 作为 Windows 服务运行。

前置要求

  • Windows Server 2019 或更高版本(Windows 11 等桌面版本也可用于评估)。

  • 本地管理员权限。

  • 根据预期用户规模选择推荐硬件配置:

    团队规模(约)内存CPU 核心数SSD 容量
    ~10 用户2-4 GB2-4 核50-100 GB
    ~100 用户4-8 GB4-8 核200-500 GB
    ~1000 用户16-32 GB8-16 核2-5 TB
  • 已安装 Git for Windows 并添加到 PATH

  • nssm(Non-Sucking Service Manager),用于将 Gitea 作为服务运行。

  • (可选)用于启用高级功能的 Enterprise 许可证。参见许可证激活以申请试用,或在安装后应用许可证。

1. 创建 Gitea 目录

  1. 创建 C:\gitea 用于存放程序文件,创建 C:\gitea-data 用于存放仓库和配置。

  2. 在 PowerShell 中创建目录结构,并设置权限,使只有服务账户可以访问数据目录:

    @('custom','data','log') | ForEach-Object { New-Item -ItemType Directory -Path "C:\gitea-data\$_" -Force | Out-Null }
    icacls C:\gitea-data /inheritance:r
    icacls C:\gitea-data /grant "Users:(OI)(CI)(RX)"
    icacls C:\gitea-data /grant "Administrators:(OI)(CI)(F)"

    如果您计划以非管理员身份运行服务,请将 Users 替换为专用账户。

2. 下载 Enterprise 二进制文件

  1. 选择您要部署的 Enterprise 版本(例如 24.6.0)。
  2. commitgo/gitea-ee releases 下载 gitea-ee-<version>-windows-4.0-amd64.exe,并将其放置在 C:\gitea\gitea.exe
  3. (可选)将现有的 app.ini 复制到 C:\gitea-data\custom\conf\app.ini,以复用您的配置。

3. 配置数据库(可选)

Gitea Enterprise 需要 MySQL/MariaDB 或 PostgreSQL。请提前创建数据库,并在 custom/conf/app.ini 中设置连接字符串。

MySQL / MariaDB

[database]
DB_TYPE = mysql
HOST = db.internal:3306
NAME = gitea
USER = gitea
PASSWD = change-me-now
SSL_MODE = disable

PostgreSQL

[database]
DB_TYPE = postgres
HOST = db.internal:5432
NAME = gitea
USER = gitea
PASSWD = change-me-now
SSL_MODE = disable

请使用 Windows Credential Manager、Secrets Manager 或您的编排工具来安全地存储密码。

4. 运行安装向导

  1. 以管理员身份启动 PowerShell,第一次以交互方式启动 Gitea:

    cd C:\gitea
    .\gitea.exe web --config C:\gitea-data\custom\conf\app.ini
  2. 浏览器访问 http://localhost:3000(或主机地址),完成安装向导,并将 AppDataPath 指向 C:\gitea-data

  3. 初始配置保存完成后,停止该进程。

5. 将 Gitea 安装为 Windows 服务

  1. nssm.exe 解压到 C:\nssm(或 PATH 中的任意目录)。

  2. 注册服务:

    nssm install Gitea "C:\gitea\gitea.exe" "web" "--config" "C:\gitea-data\custom\conf\app.ini"
  3. 在 NSSM 服务编辑器中:

    • Startup directory 设置为 C:\gitea
    • I/O 选项下,将 OutputError 重定向到 C:\gitea-data\log\gitea.log
    • (可选)以专用服务账户运行。
  4. 使用 nssm start Gitea 或通过服务(Services)MMC 管理单元启动服务。

6. 配置 HTTP/HTTPS 访问

  • 使用 Windows Defender 防火墙规则或您的负载均衡器暴露 3000 和 22 端口(或您配置的 SSH 端口)。
  • 如需直接提供 HTTPS 服务,请安装 TLS 证书并在 app.ini 中配置反向代理设置,或将 Gitea 置于 IIS/NGINX/Traefik 之后。

7. 安装后配置

  • 请查阅上游的 Configuration Cheat Sheet,以微调 app.ini(身份验证提供商、邮件、存储后端等)。
  • 编辑 C:\gitea-data\custom\conf\app.ini,然后运行 nssm restart Gitea(或重启该 Windows 服务)以应用新设置。

8. 升级与维护

  • 停止 Gitea 服务,下载更新的 Enterprise 可执行文件,替换 C:\gitea\gitea.exe,然后启动服务。
  • 关注 Gitea Enterprise 发行说明,及时了解 Enterprise 版本更新。
  • 频繁备份 C:\gitea-data,并尽可能在预发布环境中测试升级。
  • 服务运行后,按照许可证激活应用或续订 Enterprise 许可证。
  • 若需要跨多台 Windows 主机横向扩展,请复用您在 Linux 上使用的共享存储、数据库和负载均衡模式,使每个节点保持无状态。

Gitea Enterprise 在各次升级中依赖一致的配置文件和目录结构,因此替换二进制文件后,现有的自动化或脚本可以继续正常工作。