在 Windows 上安装(Install on Windows)
通过调整上游 Gitea Windows 安装说明,将 Gitea Enterprise 作为 Windows 服务运行。
前置要求
-
Windows Server 2019 或更高版本(Windows 11 等桌面版本 也可用于评估)。
-
本地管理员权限。
-
根据预期用户规模选择推荐硬件配置:
团队规模(约) 内存 CPU 核心数 SSD 容量 ~10 用户 2-4 GB 2-4 核 50-100 GB ~100 用户 4-8 GB 4-8 核 200-500 GB ~1000 用户 16-32 GB 8-16 核 2-5 TB -
已安装 Git for Windows 并添加到
PATH。 -
nssm(Non-Sucking Service Manager),用于将 Gitea 作为服务运行。
-
(可选)用于启用高级功能的 Enterprise 许可证。参见许可证激活以申请试用,或在安装后应用许可证。
1. 创建 Gitea 目录
-
创建
C:\gitea用于存放程序文件,创建C:\gitea-data用于存放仓库和配置。 -
在 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 二进制文件
- 选择您要部署的 Enterprise 版本(例如
24.6.0)。 - 从 commitgo/gitea-ee releases 下载
gitea-ee-<version>-windows-4.0-amd64.exe,并将其放置在C:\gitea\gitea.exe。 - (可选)将现有的
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. 运行安装向导
-
以管理员身份启动 PowerShell,第一次以交互方式启动 Gitea:
cd C:\gitea
.\gitea.exe web --config C:\gitea-data\custom\conf\app.ini -
浏览器访问
http://localhost:3000(或主机地址),完成安装向导,并将AppDataPath指向C:\gitea-data。 -
初始配置保存完成后,停止该进程。
5. 将 Gitea 安装为 Windows 服务
-
将
nssm.exe解压到C:\nssm(或PATH中的任意目录)。 -
注册服务:
nssm install Gitea "C:\gitea\gitea.exe" "web" "--config" "C:\gitea-data\custom\conf\app.ini" -
在 NSSM 服务编辑器中:
- 将 Startup directory 设置为
C:\gitea。 - 在 I/O 选项下,将 Output 和 Error 重定向到
C:\gitea-data\log\gitea.log。 - (可选)以专用服务账户运行。
- 将 Startup directory 设置为
-
使用
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 在各次升级中依赖一致的配置文件和目录结构,因此替换二进制文件后,现有的自动化或脚本可以继续正常工作。