近期有一则新闻 GitLab 停止为中国大陆等地区用户提供服务。此事暂时只涉及到 Gitlab 的 SaaS 版本,本地部署版本不受影响。但考虑到 Gitlab 此前就对中国和俄罗斯抱有敌意,2019 年就发布过一则拒绝中国员工的“封锁令”。所以保险起见应该适当考虑一些其他 Git 平台作为替代方案。
去年的一篇文章《如何通过 Docker 搭建一个轻量 Git 服务端,并讲讲 Docker 的配置逻辑》已经介绍了如何部署轻量级的 Git 服务:Gogs,文中还包含了许多 Docker 的基础知识。Gogs 很适合个人部署在 NAS 上,也可以为 Obsidian 提供一个本地的 Git 服务作为同步平台。
而 Gitea 则是另一个更符合公司场景下的 Git 服务,具备更完善的权限控制、CI/CD 等功能,界面上也更美观更完善。
先了解一下 Gitea,Gitea 是一个由社区驱动的自托管 Git 服务,源自 Gogs 的分叉,主要有以下几个优点:
- 轻量高效:占用资源少,树莓派、NAS 甚至小型服务器都能轻松运行。
- 功能丰富:支持细粒度的权限控制、内置 CI/CD 等,满足个人开发者和小团队的需求。
- 社区活跃:开发者社区非常活跃,更新频繁,用户反馈也能快速得到响应。
相比于 GitLab,Gitea 对系统资源的要求要低得多,2GB 内存的小型服务器、NAS 或者树莓派都能稳稳地跑起来。无论是个人笔记同步,还是小团队项目协作,Gitea 都是一个非常不错的选择。
方法一:通过 1Panel 简易安装
1Panel 目前已经提供了 Gitea 的一键安装,如果你想用最简单的形式进行安装,可以先参考这篇文章部署 1Panel,安装过程完全可视化。
🔗 1Panel:开源 Linux 服务器运维管理面板,让你活动买的服务器都能用起来 | #UNTAG 在应用商店里搜索 Gitea 并安装,期间包含了 MySQL、PostgreSQL 的配置,最终也是以 Docker 方式进行安装的,不会搞乱现有的服务器环境。
完成安装后就可以通过 IP 地址 + 端口号就可以访问了。
方法二:用 Docker 安装 Gitea
如果你对 1Panel 这样的运维面板有顾虑,可以考虑直接通过 Docker 部署。(如果需要更细节的配置方法,你可以参考之前的文章简单了解下 Docker 的相关知识)
首先我们把 Gitea 的服务启动起来,这种方法会采用 SQLite 作为数据库,比较适合个人使用。公司使用建议补充配置 MySQL。