极易搭建的自助Git服务Gogs
简介
什么是 Gogs ?
Gogs
是一个轻量级、自托管的Git
服务,旨在提供简单、高效的Git
版本控制解决方案。它允许用户在自己的服务器上快速部署Git
仓库,便于团队协作和代码管理。使用Go
语言开发使得Gogs
能够通过独立的二进制分发,并且支持Go
语言支持的所有平台,包括Linux
、macOS
、Windows
和基于ARM
的操作系统。
主要特点
- 易于安装: 用户只需运行适合其平台的二进制文件,或通过
Docker
、Vagrant
等工具进行部署。 - 跨平台支持:
Gogs
可以在多种操作系统上运行,包括Windows
、Mac
、Linux
和ARM
等。 - 轻量级:
Gogs
的最低系统要求非常低,可以在Raspberry Pi
等低配置设备上运行,甚至一些用户在NAS
设备上也能成功部署。 - 开源免费:
Gogs
是100%
开源的,遵循MIT
许可证,源代码可在GitHub
上获取,用户无需支付费用即可使用。
应用场景
- 团队协作:
Gogs
适合开发团队用于管理代码和项目,提供版本控制和协作功能。 - 私有项目托管: 适合需要在内部网络中托管代码的企业和开发者,确保数据安全。
- 轻量级解决方案: 对于资源有限的环境(如小型服务器或单板计算机),
Gogs
提供了一个经济实惠的Git
解决方案。
Gogs
以其简洁和高效的特性,成为了许多开发者和团队的理想选择。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 gogs
,选择第一个 gogs/gogs
,版本选择 latest
。
本文写作时,
latest
应该是0.13.2
之后的版本;
从软件界面看是 0.14.0+dev
卷
在 docker
文件夹中,创建一个新文件夹 gogs
,并在其中建一个子文件夹 data
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/gogs/data |
/data |
存放数据,包括仓库和配置文件 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 | 说明 |
---|---|---|
3234 |
3000 |
主服务端口,用于访问 Gogs 的 Web 界面 |
3222 |
22 |
用于 SSH 访问,以便通过 Git 协议进行代码推送和拉取 |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 gogs 和 子目录 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 gogs 和 子目录 |
运行
在浏览器中输入 http://群晖IP:3234
就能看到向导界面
既然是简易,数据库就选择 SQLite3
修改
- 域名: 填写
Docker
主机的主机名或IP
地址,将默认的localhost
改为192.168.0.197
- 应用 URL:填写公开的访问地址,将默认的
http://localhost:3000/
改为http://192.168.0.197:3234/
如果要启用
SSH
协议,要将SSH 端口
改为3222
;
点 立即安装
完成之后,会显示登录界面
第一次需要先注册
登录成功后的主界面
接下来就可以创建仓库了
如果是管理员,可以进入管理面板
参考文档
gogs/gogs: Gogs is a painless self-hosted Git service
地址:https://github.com/gogs/gogsGogs: A painless self-hosted Git service
地址:https://gogs.io/gogs/gogs - Docker Image | Docker Hub
地址:https://hub.docker.com/r/gogs/gogs