返回

一键部署轻量级Git服务Gogs

开发工具

在当今快速迭代、协作频繁的软件开发世界中,拥有一款高效、易用的代码托管服务至关重要。Git作为分布式版本控制系统,因其强大的协作能力和高效的代码管理特性而备受青睐。而Gogs作为一款轻量级且易于部署的Git服务,无疑是中小团队和个人的理想选择。在本文中,我将详细介绍如何快速搭建一个轻量级Git服务Gogs,帮助大家轻松迈出代码托管的第一步。

1. 前期准备

在部署Gogs之前,需要确保服务器已满足以下要求:

  • 操作系统:Linux(推荐Ubuntu或CentOS)
  • 内存:256MB以上
  • 存储空间:500MB以上
  • 数据库:MySQL或PostgreSQL

2. 下载Gogs

访问Gogs官网(https://gogs.io/),选择与服务器操作系统相匹配的最新稳定版本,下载编译好的二进制包。

3. 安装Gogs

解压下载的二进制包,并将其移动到服务器上。例如:

tar -xzvf gogs_v0.12.2_linux_amd64.tar.gz
mv gogs /usr/local/bin

4. 配置Gogs

创建Gogs的配置文件config.ini,并将其放置在与Gogs二进制包相同的目录中。在配置文件中,需要设置以下基本配置项:

[database]
TYPE = mysql
HOST = 127.0.0.1
NAME = gogs
USER = root
PASSWD = password

[server]
HTTP_PORT = 3000
RUN_USER = gogs

其中,需要根据实际情况修改数据库配置([database]部分)和HTTP端口(HTTP_PORT)。

5. 创建数据库

使用您选择的数据库管理工具(例如MySQL或PostgreSQL)创建Gogs数据库,并授予Gogs用户访问权限。

6. 初始化Gogs

运行以下命令初始化Gogs:

gogs db init

这将创建Gogs所需的数据库表。

7. 启动Gogs

运行以下命令启动Gogs服务:

gogs web

8. 升级到HTTPS

为了增强安全性,建议将Gogs部署升级到HTTPS。这里有两种方法:

使用免费SSL证书(推荐)

  1. 安装Certbot:sudo apt install certbot
  2. 生成SSL证书:sudo certbot --nginx
  3. 修改Gogs配置文件:
    • HTTP_PORT改为HTTP2_PORT,例如:HTTP2_PORT = 3000
    • RUN_USER改为www-data
  4. 重启Gogs:sudo systemctl restart gogs

使用付费SSL证书

  1. 购买SSL证书
  2. 将SSL证书和私钥文件放置在Gogs目录的conf子目录中
  3. 修改Gogs配置文件:
    • HTTP_PORT改为HTTPS_PORT,例如:HTTPS_PORT = 3000
    • 设置CERT_FILEKEY_FILE指向SSL证书和私钥文件
  4. 重启Gogs:sudo systemctl restart gogs

9. 完成

至此,您已成功部署了一个轻量级Git服务Gogs。现在,您可以通过浏览器访问您的Gogs实例(例如:https://your-domain.com:3000),并开始托管您的代码仓库了。

结论

部署Gogs是一个简单且高效的过程,即使对于初学者来说也是如此。通过本文介绍的步骤,您可以快速搭建一个轻量级Git服务,帮助您的团队或个人高效协作和管理代码。