轻量级自托管Git服务:Gitea私有化部署与公网访问

Gitea是一款基于Go语言开发的开源自托管Git服务,它提供了类似GitHub和GitLab的代码托管、协作与项目管理功能。其轻量级设计(最低仅需512MB内存)使其成为个人开发者与小型团队构建私有代码仓库的理想选择,在数据安全、成本控制和定制化需求方面具有显著优势。

Gitea 强大功能

  • 代码托管Gitea 支持基于 Git 的代码仓库的创建和管理。它还使代码审查变得极其轻松便捷,从而提升用户和企业的代码质量。
  • CI/CD Gitea 集成了一个 CI/CD 系统 Gitea Actions,该系统与GitHub Actions兼容。用户可以使用熟悉的 YAML 格式创建工作流,也可以使用超过 2 万个现有的插件。
  • 项目管理您可以通过任务发布、标签和看板高效地管理需求、功能和缺陷。这些工具通过整合分支、标签、里程碑、任务分配、时间跟踪和依赖关系,帮助您规划和跟踪开发进度。

如何访问内网部署的 Gitea?

本地部署的Gitea服务通常处于内网中,外网无法直接访问。内网穿透技术通过建立公网与内网之间的安全隧道,实现远程访问。

一. 搭建Gitea 服务

  1. 首先,我们先在其开源平台上下载代码,小编以Win10为例(如您需要其他的系统,可以查看相关的文档),点此下载选择Windows安装文件进行下载。
  1. 将文件下载到一个文件夹里(文件夹名称建议不要出现中文,避免一些兼容问题),然后双击打开该文件。
  1. 打开文件后,会出下下方的窗口,这时候会启动一个本地服务 http://localhost:30000
  1. 我们在浏览器输入 http://localhost:30000 会打开初始化配置页面。在选择数据库类型的时候,您需要选择对应的数据库,我们这里选择SQLite3,您可以根据自己实际选择。然后往下拉到最后,选择立即安装。

数据库选择建议 对于不同规模的使用场景,可灵活选择数据库后端:
SQLite3:适用于个人或小型团队,零配置且维护简单
MySQL/PostgreSQL:适合团队协作,提供更好的并发性能

  1. 这里会出现一个正在安装页面,我们需要等待一会。
  1. 安装好了之后,我们点击右上角的登录按键,就会进入到下方的页面了。此时我们需要创建一个账号

此时注册的第一个帐户,它拥有管理员权限。请仔细记住您的用户名和密码。如果您忘记了用户名或密码,请参阅 Gitea 文档以恢复账户。

  1. 创建完成之后,您就可以通过该账号密码登录到Gitea管理平台了。
  1. 完成了上面环境的部署搭建后,接下来,我们继续实现远程访问功能。

二. 创建 ZeroNews 映射服务

  1. 首先,打开 ZeroNews 网站,然后选择您的系统(小编用的是用Win10,选择Windows即可),并按照对应的步骤和命令安装运行 Agent 服务。

注意:Agent前台运行不能关闭命令窗口如果您想要开机自启动,可以执行后台运行命令

  1. 运行完成之后,您可以在 Agent 页面看到已经在线的 Agent 服务。
  1. 接着,我们在域名端口页面,创建一个可用的公网域名(自定义前缀),并勾选HTTPS 协议端口。
  1. 域名创建完成之后,我们继续打开映射页面,并按下面的步骤添加映射。

a) Agent:选择第一步运行的 Agent

b) 映射协议:选择 HTTP 协议

c) 域名:选择刚创建好的域名

d) 带宽:根据需要选择带宽大小

e) 内网IP:我们是本地部署,直接使用 127.0.0.1 即可

f) 内网端口:输入本地服务的端口 3000 即可

  1. 按照上述步骤创建完成之后,我们就可以得到一条可公网访问的映射域名。

三. 公网访问您的 Gitea仓库

  1. 在任意有网络访问电脑的浏览器上,复制并打开以下链接进行访问。
  1. 根据您的需求创建仓库和迁移仓库等。
  1. 远程管理您的 Gitea 仓库相关配置信息。
相关推荐
KIDULT°2 小时前
MySQL系列 (1):数据库原理
运维·数据库·mysql·云计算
我不是程序员三三3 小时前
透明加密软件偶发解密异常排错实录:文件时能打开时乱码
数据库·域智盾
snhna3 小时前
向量数据库深度实战:从 HNSW 到 pgvector、Milvus 选型与 RAG 落地
数据库·人工智能·python·postgresql·milvus
天行健,君子而铎3 小时前
数据分类分级的范式转换:从规则匹配到场景化高准确率一键部署
网络·数据库·安全
牛战士coding3 小时前
MySQL 读写分离完整链路:主从复制、多数据源与 @DS 路由
数据库·mysql
goehou4 小时前
MCP 查数实战:让 LLM 安全地查数据库(只读账号、SQL 校验、参数漂移)
数据库·ai·llm·教程·mcp·function calling
我不会插花弄玉5 小时前
7.函数【由浅入深-MySQL】
android·数据库·mysql
周小董5 小时前
[1369]Windows上安装PostgreSQL
数据库·windows·postgresql
zttbee6 小时前
git命令
git
一只积极向上的小咸鱼7 小时前
第一性原理思考:从拆解问题到用实验检验答案
数据库