Gogs: 打造属于你自己的轻量级 Git 服务

作者:修己xj日期:2026/5/8

在软件开发的世界里,Git 已经成为版本控制的事实标准。GitHub、GitLab 等平台提供了强大的托管服务,但有时候,我们需要一个完全属于自己的私有 Git 仓库——可能是为了代码安全,可能是为了定制化需求,可能是为了集成到现有服务中,也可能只是想在自己的服务器上搭建一个个人代码库。开源gitlab有点重,最近我在GitHub上发现了一个轻量级项目Gogs

什么是 Gogs?

Gogs 是一个用 Go 语言编写的自助 Git 托管服务。它的目标是以最简单、最轻松的方式搭建一个简单、稳定且可扩展的 Git 服务。得益于 Go 语言的跨平台特性,Gogs 可以在 Linux、macOS、Windows 以及基于 ARM 的系统上以独立的二进制文件运行。

该项目在github上已有47.5k star

github地址:github.com/gogs/gogs

文档地址: gogs.io/

为什么选择 Gogs?

轻量级,低资源占用

Gogs 最吸引人的特点就是轻量。有人在仅有 64MB 内存的 Docker 容器中运行 Gogs!对于团队协作,2 个 CPU 核心和 512MB 内存就足够起步了。

功能丰富,不输大厂

别看 Gogs 轻量,该有的功能一个都不少:

  • 用户面板:用户仪表板、个人资料和活动时间线
  • 多协议访问:支持 SSH、HTTP 和 HTTPS 协议访问仓库
  • 完整的管理功能:用户、组织和仓库管理
  • Webhook:支持 Slack、Discord、钉钉等
  • Git 钩子:Git hooks、部署密钥和 Git LFS
  • 协作功能:工单(Issues)、合并请求(Pull Requests)、Wiki、受保护分支
  • 仓库迁移:从其他代码托管平台迁移和镜像仓库
  • Web 编辑器:在线编辑仓库文件和 Wiki
  • 多格式渲染:支持 Jupyter Notebook 和 PDF 渲染
  • 多认证方式:SMTP、LDAP、反向代理、GitHub.com、GitHub Enterprise,支持两步验证
  • 多语言支持:超过 31 种语言的本地化

数据库支持丰富

Gogs 支持多种数据库后端:PostgreSQL、MySQL、SQLite3,以及任何支持这些协议的数据库。

Docker 部署:5 分钟快速上手

以下是Docker具体的部署步骤:

第一步:拉取镜像

1docker pull gogs/gogs
2

第二步:创建docker-compose.yml文件

创建一个部署目录gogs,在该目录下创建docker-compose.yml文件,内容如下:

1services:
2  gogs:
3    image: gogs/gogs
4    container_name: gogs
5    ports:
6      - "10022:22"
7      - "10880:3000"
8    volumes:
9      - ./data:/data
10    restart: unless-stopped
11

这里解释一下各个参数的含义:

  • - "10022:22":将宿主机的 10022 端口映射到容器的 22 端口(SSH 服务)
  • - "10880:3000":将宿主机的 10880 端口映射到容器的 3000 端口(Web 服务)
  • - ./data:/data:将宿主机的 ./data 目录挂载到容器的 /data 目录

第三步:运行容器

1docker-compose up -d 
2

出现如下内容则说明启动成功

第四步:初始配置

启动容器后,通过浏览器访问 http://你的服务器IP:10880 进入安装页面。

我们需要先创建好所需要的数据库,我使用的是mysql

第五步:使用

使用相对来说比较简单,此处不多做讲解

常见问题与解决方案

1. 内置 SSH 服务器不推荐

在 Docker 容器内使用内置 SSH 服务器不被推荐。建议使用映射到宿主机的 SSH 端口(如示例中的 10022)。

其他方式部署

还有其他二进制包部署等方式,家人们可参考一下文章

使用 Gogs 搭建自己的 Git 服务器:blog.mynook.info/post/host-y…

结语

Gogs 是一个小而美的 Git 服务解决方案。无论你是想在个人服务器上搭建私有的代码仓库,还是为小团队提供一个轻量级的代码协作平台,Gogs 都是一个值得考虑的选择。

它的简洁并不意味着功能的缺失,相反,Gogs 在保持轻量的同时,提供了 Git 托管服务所需的核心功能。加上 Docker 的一键部署,你可以在几分钟内拥有一个属于自己的 Git 服务。


Gogs: 打造属于你自己的轻量级 Git 服务》 是转载文章,点击查看原文


相关推荐


【系统架构师案例题-知识点】数据库与缓存设计
roman_日积跬步-终至千里2026/4/28

本文聚焦系统架构师案例题中的数据库与缓存设计,重点说明关系型数据库设计、NoSQL 选型、分库分表、读写分离、缓存策略、缓存故障模式以及缓存与数据库一致性问题,并结合电商、支付、内容平台、搜索系统、推荐系统等真实软件行业场景说明这些技术为什么会出现、各自解决什么问题、工程上该如何取舍。 阅读时可以按三个层次把握:先理解数据为什么会成为瓶颈,再理解数据库和缓存分别解决哪一类问题,最后把题干中的业务信号翻译成卷面表达。 一、先建立整体认识 数据库与缓存设计的核心,不是“会不会背名词”,而是看清系统到


Visual Studio 与 Visual Studio Code 区别
日更嵌入式的打工靓仔2026/4/20

特性Visual Studio (VS)Visual Studio Code (VS Code)本质类型集成开发环境 (IDE)轻量级源代码编辑器核心定位大型、复杂的项目开发(Windows、游戏、企业级应用)快速编辑、脚本编写、Web/云开发主要平台Windows、macOS (功能有差异)Windows、macOS、Linux占用空间大 (安装需要几GB到几十GB空间)小 (安装包约100MB以下)性能/速度启动和加载大型项目较慢启动迅速,打开文件极快价格社区版免费;专业版/企业版付费完全免


OpenClaw Windows 安装详细教程
超低空2026/4/11

OpenClaw(前身为 ClawdBot)是一款本地托管的个人 AI 助手系统,可以通过网关控制平面连接到 WhatsApp、Telegram、Discord 等常见通讯软件,并在本地运行各种工作流。 由于 OpenClaw 深度依赖底层系统的进程管理和文件监听,直接在 Windows 原生环境下运行可能会遇到一些限制。因此,官方推荐使用 WSL2(Windows Subsystem for Linux) 或 Docker 来进行安装。以下是详细的安装教程和避坑指南。 安装方式优缺点对比 在


别让APP名字和图标毁了你的Toast!一招教你Android优化技巧
小码哥_常2026/4/3

别让APP名字和图标毁了你的Toast!一招教你Android优化技巧 为啥要去掉 Toast 里的 APP 名字和图标 在如今这个看脸的时代,APP 的颜值也至关重要。统一、美观的 UI 设计,就像给 APP 穿上了一件漂亮的外衣,不仅能提升用户体验,还能让 APP 在众多竞争对手中脱颖而出。 大家在使用 APP 的时候,应该都遇到过 Toast 消息提示吧。这是一种轻量级的消息提示框,通常出现在屏幕底部,用来告知用户一些操作结果或者系统状态。但是,不知道大家有没有注意到,在某些手机上,比如小


Bun v1.3.11 官方更新全整理:新增功能、关键修复与升级验证
iDao技术魔方2026/3/26

Bun v1.3.11 官方更新全整理:新增功能、关键修复与升级验证 摘要 Bun v1.3.11 不是“小修小补”版本,而是一次“功能新增 + 兼容修复 + 工程稳定性”集中迭代。很多团队升级后只跑了 bun test,却漏掉 Cron、ANSI 字符串裁切、测试路径忽略、Windows ARM64 shim 等高价值更新。本文按官方清单做工程化拆解:新增了什么、修了什么、会影响哪里、怎么快速验证,附可执行命令与排错建议。 大家好,我是 iDao。10 年全栈开发,做过架构、运维,也在落地


web网络安全-每日一练-Training-WWW-Robots
观书喜夜长2026/3/18

练习题目:Training-WWW-Robots 练习网站(攻防世界):https://adworld.xctf.org.cn/ 解题步骤 1、打开题目场景 在这个小小的训练挑战中,你将了解Repbots_exclusion_standard。 robots.txt文件被网络爬虫用于检查它们是否被允许爬取和索引你的网站,或者只是网站的部分内容。 有时这些文件会暴露目录结构,而不是保护内容不被爬取。 祝你玩得开心! 2、利用Robots协议 发现根目录下有一个 f10g


Dockerfile构建SQL-Labs靶场及Docker安全管控
文刀竹肃2026/3/9

Dockerfile构建SQL-Labs靶场及Docker安全管控 一、前言 SQL注入是网络安全领域最常见的漏洞之一,SQL-Labs是一款经典的SQL注入练习靶场,包含了各种类型的SQL注入场景(联合查询、盲注、报错注入等),是网安学习、漏洞验证的必备环境。本文将通过Dockerfile自定义构建SQL-Labs靶场镜像,完整演示从基础镜像选择、依赖安装、靶场部署到镜像优化的全过程,同时重点讲解容器权限管控、安全风险规避要点,贴合网安靶场搭建的实际需求,与上一篇Docker基础、核心命令内容


Gateway—— 高级流量路由
离恨烟~2026/3/1

0 前言 Gateway API 是 Kubernetes 官方推出的下一代流量管理标准,旨在解决传统 Ingress 在协议支持、扩展性和多租户等方面的不足。它通过 GatewayClass、Gateway、HTTPRoute 等 CRD 实现流量治理的分层解耦,让基础设施和应用团队各司其职。本章将以若依项目为例,实战部署 Envoy Gateway 并实现高级流量路由。 1 Gateway的概念 1.1 什么是Gateway Gateway API 是 Kubernetes 官方下一代“流量


2026年,我的AI编程助手使用心得(纯个人体验,非评测)
PieroPc2026/2/21

今年在AI编程助手上摸索出一套自己的组合拳,分享给同样在路上的创作者们: 初稿设计 首选小米MiMo。不是因为它功能多强,而是因为它出设计稿真的快、真的漂亮。脑子里的想法扔给它,几分钟就能看到赏心悦目的初稿,这种“即时满足感”别的工具给不了。 aistudio.xiaomimimo.com/ 数据处理 遇到图片要转CSV或JSON,我会切到豆包Doubao。它的综合模型对图片支持确实好,识别准、转换快。不过坦白说,深入问下去就容易卡壳,这时候别硬撑。 www.doubao.c


从少年到父亲:我在异乡的第一个年
修己xj2026/2/13

今天是老历腊月二十五。写下“老历”这两个字时,忽然觉得它们只在过年时才被记起——像老家,那个我长到二十岁的地方。工作以后,也就过年才回了。 今年不同了。我的身份栏里添了“父亲”二字,恍惚间,竟像回到了我小时候。今天,想和家人们聊聊年味,聊聊这些年,我是有着怎样不一样的感受的。 🧨 童年的年:年是撒欢的鞭炮 小的时候,特别喜欢过年,那会的过年,从进入腊月开始,过年的氛围越来越浓了,那会我们每天兜里揣满鞭炮,满村子放鞭炮,今天给二大爷家的房顶上扔,明天炸五太爷家的果园,虽然因此也挨了不少的打,可

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 XYZ博客