记一次Linux下私有化部署Git

492 阅读2分钟

当前使用最为广泛的代码版本管理工具是 GitSVN,在学会使用 git相关的操作之后,可以使用GitHub进行 git的练习操作。但是吧,众所周知, GitHub服务器在国外,因此在国内访问的时候,会异常的慢,就像是乌龟🐢 爬似的。那么这个时候可以使用 Gitee 进行操作。

但这个时候,有人就要说了,我不想挂在别人的网站上,有没有解决办法?身为程序猿,怎么可能没有解决方案呢

那就是 Gogs

Gogs 是一款极易搭建的自助Git服务

下面介绍一下如何基于Linux系统搭建Gogs服务

这里以我在 腾讯云 的服务器为例子

配置清单

  • 系统:TencentOS Server
  • 2核4G

第一步 安装Gogs

使用 SSH连接上服务器

# 切换目录
cd /usr

# 创建一个新的目录
mkdir gogs

# 进入目录 此时的目录为 /usr/gogs
cd gogs 

# 下载gogs二进制压缩包
wget https://dl.gogs.io/0.12.4/gogs_0.12.4_linux_amd64.tar.gz

# 解压
tar -zxvf gogs_0.12.4_linux_amd64.tar.gz

第二步 配置启动

在gogs根目录 vim custom/conf/app.ini

写入配置

APP_NAME   = Gogs
RUN_USER   = root
BRAND_NAME = Gogs
RUN_MODE   = prod

[database]
DB_TYPE  = mysql
HOST     = MySQL地址
NAME     = mysql账号
USER     = mysql连接账号
PASSWD   = mysql连接密码
SSL_MODE = disable
TYPE     = mysql
PASSWORD = mysql连接密码
PATH     = /usr/gogs/gogs/data/gogs.db

# 国际化
[i18n]
LANGS = en-US,zh-CN,zh-HK,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT
NAMES = English,简体中文,繁體中文,Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano

[repository]
ROOT = /usr/gogs/repositories

[server]
DOMAIN           = localhost
HTTP_PORT        = 3000
EXTERNAL_URL     = http://localhost:3000/
DISABLE_SSH      = false
SSH_PORT         = 22
START_SSH_SERVER = false
OFFLINE_MODE     = false

[mailer]
ENABLED = false

[service]
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL     = false
DISABLE_REGISTRATION   = false
ENABLE_CAPTCHA         = true
REQUIRE_SIGNIN_VIEW    = false

然后保存退出

# 启动 缺点:关闭shell连接工具后会关闭
$ ./gogs web

# 守护进程启动
$ nohup ./gogs web > log/gogs_web.log 2>&1 &

第三步 访问进行简单配置

在浏览器访问 IP:端口 (默认端口 3000),进入页面后进行一些傻瓜式的配置即可