Install with Docker
使用 Docker 部署 Gitea Enterprise,同时复用官方的容器工具链。
-
Docker Engine 20.10+ 或某个 Kubernetes 发行版。
-
可选:Docker Compose v2,用于声明式配置。
-
根据预期用户规模选择推荐硬件配置:
团队规模(约) 内存 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 -
用于
/data的持久化卷,以及您所需的任何外部数据库。 -
Git 已内置于 Enterprise 镜像中,因此可以立即提供仓库服务。
-
(可选)用于启用高级功能的 Enterprise 许可证。参见许可证激活以申请试用,并在部署后上传许可证。
1. 选择镜像版本
Section titled “1. 选择镜像版本”Enterprise 镜像发布于 commitgo/gitea-ee。选择您要部署的标签(例如 27.3.2)。
IMAGE=commitgo/gitea-ee:27.3.22. 单主机容器
Section titled “2. 单主机容器”docker run -d \ --name gitea \ --restart always \ -p 3000:3000 \ -p 222:22 \ -v gitea-data:/data \ -e GITEA__server__DOMAIN=gitea.example.com \ -e GITEA__server__SSH_DOMAIN=gitea.example.com \ ${IMAGE}可以通过环境变量(GITEA__section__key=value)传入额外配置,或挂载 /data/gitea/conf/app.ini。
3. Docker Compose 示例
Section titled “3. Docker Compose 示例”services: db: image: mariadb:11 restart: always environment: - MARIADB_ROOT_PASSWORD=change-me-now - MARIADB_DATABASE=gitea - MARIADB_USER=gitea - MARIADB_PASSWORD=gitea-secret volumes: - gitea-mysql:/var/lib/mysql
gitea: image: commitgo/gitea-ee:27.3.2 depends_on: - db restart: always environment: - GITEA__server__DOMAIN=gitea.example.com - GITEA__server__SSH_PORT=222 - GITEA__database__DB_TYPE=mysql - GITEA__database__HOST=db:3306 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=gitea-secret volumes: - gitea-data:/data ports: - "3000:3000" - "222:22"
volumes: gitea-data: gitea-mysql:保存为 docker-compose.yml,然后运行 docker compose up -d。请将密码替换为来自密钥库的机密信息,并在生产环境中固定 MariaDB 镜像标签。
PostgreSQL Compose 变体
Section titled “PostgreSQL Compose 变体”如果您更倾向于使用 PostgreSQL,可以替换数据库服务:
services: postgres: image: postgres:16 restart: always environment: - POSTGRES_DB=gitea - POSTGRES_USER=gitea - POSTGRES_PASSWORD=gitea-secret volumes: - gitea-postgres:/var/lib/postgresql/data
gitea: image: commitgo/gitea-ee:27.3.2 depends_on: - postgres environment: - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=postgres:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=gitea-secret # ...其他变量与前面示例相同
volumes: gitea-data: gitea-postgres:将特定环境的配置保存在 Compose 覆盖文件或密钥文件中,使凭据不进入源代码版本管理。
4. 升级现有容器
Section titled “4. 升级现有容器”- 停止正在运行的容器并备份数据卷。
- 将镜像引用更新为目标 Enterprise 标签。
- 重新启动容器。Enterprise 二进制文件复用相同的入口点和
/data目录结构。
services: gitea: image: commitgo/gitea-ee:26.4.10 image: commitgo/gitea-ee:27.3.2容器重启后,按照许可证激活启用 Enterprise 功能。
5. 安装后配置
Section titled “5. 安装后配置”- 使用环境变量或在容器内编辑
/data/gitea/conf/app.ini,应用高级设置(身份验证提供商、邮件、仓库存储)。 - 完整的选项列表请参阅上游的 Configuration Cheat Sheet,修改后重启容器以使更改生效。
6. 维护建议
Section titled “6. 维护建议”- 遵循上游的备份与更新建议。
- 在正式上线前,先在预发布环境中测试新标签。
- 升级后,重新查看许可证激活以确认 Enterprise 许可证状态。
- 当需要扩展至单个容器之外时,请根据您的可用性需求,为数据库、对象存储和负载均衡器规划额外的节点。
Gitea Enterprise 在各版本间使用相同的入口点,因此生态工具无需更改即可继续正常工作。有关 Kubernetes 的具体说明,请参阅在 Kubernetes 上安装。