Gogs 安装,升级
本文永久链接: https://www.xtplayer.cn/git/gogs-install-update/
Gogs 是一款极易搭建的轻量级自助 Git 服务。
Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
功能特性
- 支持活动时间线
- 支持 SSH 以及 HTTP/HTTPS 协议
- 支持 SMTP、LDAP 和反向代理的用户认证
- 支持反向代理子路径
- 支持用户、组织和仓库管理系统
- 支持添加和删除仓库协作者
- 支持仓库和组织级别 Web 钩子(包括 Slack 集成)
- 支持仓库 Git 钩子和部署密钥
- 支持仓库工单(Issue)、合并请求(Pull Request)、Wiki 以及保护分支
- 支持迁移和镜像仓库以及它的 Wiki
- 支持在线编辑仓库文件和 Wiki
- 支持自定义源的 Gravatar 和 Federated Avatar
- 支持 Jupyter Notebook
- 支持邮件服务
- 支持后台管理面板
- 支持 MySQL、PostgreSQL、SQLite3、MSSQL 和 TiDB(实验性支持) 数据库
- 支持多语言本地化(22 种语言)
系统要求
- 最低的系统硬件要求为一个廉价的树莓派
- 如果用于团队项目,建议使用 2 核 CPU 及 1GB 内存
浏览器支持
- 请根据 Semantic UI 查看具体支持的浏览器版本。
- 官方支持的最小 UI 尺寸为 1024*768,UI 不一定会在更小尺寸的设备上被破坏,但我们无法保证且不会修复。
安装配置
这里我们以 docker 容器方式单节点安装,只需要一条命令即可。在 https://github.com/gogs/gogs/tree/main/docker 此处可以查询镜像构建文件以及数据存储路径等参数。默认数据保存在 /data
目录下,所以在只需要在启动 docker 容器的时候通过卷映射的方式把数据映射到主机上即可。
docker run --restart always --name=gogs -tid -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs:0.12.3 |
git clone 代码的时候,可以通过 ssh 连接或者通过 http 连接。一般常用的是 http 连接方式,如果需要通过 ssh 连接,则这里需要把 22 端口映射出去。
接着访问 node ip + 端口
进入配置界面。
首次运行安装
Gogs 支持多种数据库,一般单机模式选择轻量级的 SQLite3 数据库,数据库文件路径建议保持默认。
应用基本设置
应用名称: 可以随意设置
仓库根目录:保持默认
运行系统用户:保持默认
域名:
Gogs 运行节点 IP 或者 域名或者 VIP
SSH 端口号
这个端口需要设置为
docker -p
映射 22 到主机上的端口HTTP 端口号
这个端口需要设置为
docker -p
映射 3000 到主机上的端口应用 URL
域名 + HTTP 端口号
日志路径:保持默认
可选设置
邮件服务设置
如果 Gogs 节点可以访问互联网,或者有内部的邮件服务器,那么可以配置邮件服务,可以用来忘记密码的时候恢复密码。
服务器和其它服务设置
- 如果是离线环境,建议启用离线模式
- Gravatar 头像国内拉取非常缓慢,建议禁用 Gravatar 服务
管理员帐号设置
可以在安装的时候创建一个管理员帐号,账号名称不能为
admin
。或者在安装好之后手动注册,注册的第一个用户将自动获得管理员权限。
最后点击立即安装。
升级
升级方法很简单,只需要 docker pull
新的镜像,然后用相同的命令重新运行容器
docker pull gogs/gogs:0.12.x |
在升级完成后,确认没有问题后执行以下命令删除旧的容器:
docker rm -f gogs-old |