5分钟快速部署 Gitea:Docker 一键搭建你的私有 GitHub 完整指南

📅 发布时间:2026/9/3 12:14:49
5分钟快速部署 Gitea:Docker 一键搭建你的私有 GitHub 完整指南
5分钟快速部署 GiteaDocker 一键搭建你的私有 GitHub 完整指南【免费下载链接】giteaGit with a cup of tea! Painless self-hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD项目地址: https://gitcode.com/GitHub_Trending/gi/giteaGitea 是一款轻量级的自托管 Git 代码托管平台号称 Git with a cup of tea提供 Git 仓库托管、代码审查、团队协作、软件包注册表和 CI/CD 一站式服务是自建私有 GitHub 的首选工具。本文将教你如何用Docker 一条命令在 5 分钟内完成 Gitea 的部署无需任何复杂配置。为什么选择 Gitea在开始部署前先看看 Gitea 能为你解决什么问题轻量极速单个二进制文件即可运行资源占用远低于同类方案树莓派都能跑Docker 官方镜像官方维护gitea/gitea镜像支持 amd64、arm64 等多架构开箱即用容器内置 OpenSSHWeb 和 Git 协议同时可用零数据库依赖默认使用 SQLite不想装 MySQL/PostgreSQL 也没关系功能全面Issue、Pull Request、项目管理、Webhook、Actions 一个不少 适合场景团队内部代码托管、学习 Git 服务端管理、搭建个人代码备份站、替代公开 GitHub 的私密仓库。一键部署Docker 快速安装步骤确认你的服务器上已安装 Dockerdocker --version可查看然后执行下面这条命令即可docker run --detach \ --name gitea \ --publish 3000:3000 \ --publish 2222:22 \ --volume /data/gitea:/data \ --volume /etc/timezone:/etc/timezone:ro \ --volume /etc/localtime:/etc/localtime:ro \ gitea/gitea逐行解释这条命令做了什么参数作用--name gitea给容器起个名字方便后续管理--publish 3000:3000Web 访问端口浏览器通过它进入安装向导--publish 2222:22容器内 SSH 端口 22 映射到主机 2222用于git push--volume /data/gitea:/data核心所有数据仓库、配置、附件都持久化在这个目录容器内部的数据布局在 docker/root/etc/templates/app.ini 中有清晰定义例如代码仓库存放在/data/git/repositoriesSQLite 数据库位于/data/gitea/gitea.db。理解了这些路径后续备份就非常简单。首次访问5 步完成安装向导容器启动后打开浏览器访问http://你的服务器IP:3000会看到 Gitea 的安装配置页面按顺序填写一般设置站点名称随意填比如 我的代码站注意域名 (Domain)和HTTP 端口要与实际访问地址一致数据库默认SQLite3即可零配置使用已有 MySQL 或 PostgreSQL 的可在HOST中填写地址例如db:3306仓库设置全部保持默认即可仓库根目录为/data/git/repositories管理员账号勾选初始化 Gitea 为一个管理员账户填写用户名和密码点击页面底部立即安装按钮等待几秒即可进入登录页 到这里你的私有 GitHub 已经上线了。登录后点击右上角头像 →设置创建第一个账户或邀请团队成员即可。配置 SSH 端口让 Git 命令正常工作通过 HTTP 克隆仓库地址是http://服务器IP:3000/用户名/仓库名.git如果想用更熟悉的 SSH 协议git clone走 2222 端口需要修改客户端的~/.ssh/config文件Host mygit HostName 服务器IP Port 2222 User git之后克隆地址就变成gitmygit:用户名/仓库名.git。镜像内的 SSH 服务由容器自带的进程管理器 s6 统一托管见 docker/root/etc/s6/openssh/无需额外配置。⚠️ 如果 2222 端口被占用可以把-p 2222:22改成其他端口比如-p 10022:22并同步修改~/.ssh/config中的Port。数据备份与迁移一个目录搞定Gitea 的 Docker 镜像设计得非常干净——所有状态都保存在/data目录下/data ├── gitea/ # 配置、数据库、日志、附件 │ ├── conf/ # app.ini 主配置 │ ├── gitea.db # SQLite 数据库 │ └── attachments/ ├── git/ # 所有 Git 仓库实体 │ └── repositories/ └── ssh/ # SSH 密钥备份就是cp -r /data/gitea /backup这么简单迁移到服务器 B把这个目录拷过去再启动容器配置和仓库原样恢复。升级 Gitea 版本只需docker pull gitea/gitea docker stop gitea docker rm gitea后重新执行部署命令数据分毫不动。镜像支持的环境变量覆盖配置项如通过GITEA__SERVER__DOMAIN修改域名实现逻辑见 docker/rootless/usr/local/bin/docker-setup.sh进阶用户可以用它实现免改配置文件的调优。常见问题 FAQQ1忘记管理员密码怎么办在数据库管理页面重置或执行docker exec -it gitea su-exec git gitea admin user change-password --username 用户名交互式重置。Q2如何禁止用户自行注册进入 管理面板 → 设置 → 注册账户关闭允许自助注册后续成员由管理员统一创建。Q3如何备份后恢复停止容器 → 覆盖/data/gitea目录 → 重启容器。因为数据全部集中在单一路径恢复几乎零成本。Q4ARM 服务器如树莓派能用吗可以官方镜像同时提供 linux-amd64 和 linux-arm64 版本见 docker/manifest.tmplDocker 会自动选择匹配架构。写在最后到这里你已经拥有了一个功能完整的私有 GitHub代码托管、Issue 跟踪、Pull Request 审查、包注册表、CI/CD 全部内置。相比动辄数 GB 的同类方案Gitea 一条docker run命令即可起飞是小团队和个人开发者的极致性价比之选。核心回顾一条命令启动容器 → 浏览器 5 步完成向导 → 挂载/data即完成数据持久化。剩下的就是享受git push到自家服务器的快感吧 ☕【免费下载链接】giteaGit with a cup of tea! Painless self-hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD项目地址: https://gitcode.com/GitHub_Trending/gi/gitea创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考