☰
怎样在自己 Windows 电脑上搭 gitea
2026/11/5 6:48:32 网站建设 项目流程

Gitea 是轻量自托管 Git 代码托管系统,对标 GitLab,内存占用小,支持代码仓库、Issue、PR、Wiki、CI Actions、团队权限管理,适合内网军工 / 项目团队部署使用。

Windows 本地搭建 Gitea

两种方案:Docker Desktop(推荐,简单)、Windows 二进制直接运行(不用 docker)。 环境:Win10/Win11。

用途:本地个人代码仓库、内网小组共享;不建议直接裸暴露公网。

方案 1:Docker Desktop 方式(推荐)

1 前置

  1. 安装 Docker Desktop for Windows,开启 WSL2 后端。
  2. 启动 Docker Desktop。

新建文件夹,例如D:\gitea,在里面新建docker-compose.yml

version: "3.8" services: gitea: image: gitea/gitea:1.22 container_name: gitea restart: always environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=Gitea@Win123 volumes: - ./data:/data ports: - "3000:3000" - "2222:22" depends_on: - db db: image: postgres:15-alpine container_name: gitea-pg restart: always environment: - POSTGRES_DB=gitea - POSTGRES_USER=gitea - POSTGRES_PASSWORD=Gitea@Win123 volumes: - ./pg_data:/var/lib/postgresql/data

PowerShell 进入D:\gitea

docker compose up -d

等待容器启动完成,浏览器访问:http://127.0.0.1:3000

Web 初始化页面关键配置

  • 数据库:PostgreSQL,主机填db:5432,账号密码和 yml 保持一致
  • 站点 URL:本地用http://127.0.0.1:3000/;如果局域网其他电脑要访问,填本机局域网 IP,例如http://192.168.1.100:3000/
  • 设置第一个管理员账号,不要留空
  • SSH 端口容器内部 22,宿主机映射 2222,ssh 克隆地址带端口git@127.0.0.1:2222:xxx/xxx.git点安装 Gitea。

局域网其他机器访问:Windows 防火墙放行 3000、2222 端口。

常用运维(PowerShell)

# 停止 docker compose down # 查看日志 docker logs gitea # 重置管理员密码 docker exec -it gitea gitea admin change-password --username admin --password New@123456 # 升级 docker compose pull docker compose up -d

方案 2:Windows 二进制包(不装 Docker)

适合不想装 WSL/Docker 的场景。

  1. 去 Gitea 官网下载 Windows 版本二进制:gitea‑1.22.x‑windows‑amd64.exe
  2. 新建目录D:\gitea_win,把 exe 放进去。
  3. 在这个目录打开 cmd/PowerShell,执行:
gitea-1.22.x-windows-amd64.exe web

第一次运行自动生成目录结构、custom/conf/app.ini。 浏览器打开http://127.0.0.1:3000,进入安装页面。

数据库选项:本地玩可以选 SQLite;多人使用建议本地装 PostgreSQL。

做成 Windows 后台服务(开机自启)

以管理员打开 PowerShell

.\gitea-1.22.x-windows-amd64.exe install --service-name gitea

之后在 Windows 服务里找到 gitea,设置自动启动。

停止服务:

sc stop gitea

本地使用常见坑

  1. 局域网别的电脑打不开页面Windows 防火墙阻止,需要入站规则放行 3000/tcp、2222/tcp;站点 URL 必须填写本机局域网 IP,不能写 127.0.0.1。
  2. SSH 克隆带端口 2222
git clone ssh://git@192.168.1.100:2222/用户名/仓库名.git
  1. 备份
  • Docker 版:直接备份 D:\gitea 整个文件夹;数据库可导出:
docker exec gitea-pg pg_dump -U gitea gitea > gitea_back.sql
  • 二进制版:备份整个 gitea_win 目录。
  1. 关闭注册:登录管理员账号,管理面板 -> 站点管理,关闭用户注册,手动添加账号。

最小测试版 compose(SQLite,不需要 postgres,快速体验)

version: "3.8" services: gitea: image: gitea/gitea:1.22 container_name: gitea restart: always environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=sqlite3 - GITEA__database__PATH=/data/gitea.db volumes: - ./data:/data ports: - "3000:3000"

SQLite 只适合个人少量使用,多人并发会卡顿。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询