基本使用
gogs是自包含的程序,把包含gogs的压缩包解压后,无需安装,可直接执行。
命令行中输入
gogs web
可以启动gogs服务,首次启动会自动引导到初始化配置页面,按需配置即可。
自定义配置的存储位置为 custom/conf/app.ini
,可按需配置修改。
配置HTTPS
在 custom/conf/app.ini 文件中修改(新增)配置选项
[server]
PROTOCOL = https
CERT_FILE = custom/https/cert.pem
KEY_FILE = custom/https/key.pem
如果gogs用了构建标签 cert,则可以直接用于生成自签名证书
gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com
自签名证书无法提交
如果使用了自签名证书走https协议,提交的时候则会出现错误提示
fatal: unable to access 'http:.git/': SSL certificate problem: self signed certificate
这个错误和gogs没多大关系,在配置本地git禁用sslVerify
git config --global http.sslVerify false
内网环境部署
将 Gogs 运行于内网环境,可修改(新增)配置选项
[server]
OFFLINE_MODE = true
这将使Gogs运行于离线模式,一些需要访问互联网的操作将不会被触发,避免网络超时,响应缓慢。
Windows服务
gogs如果使用了minwinsvc标签构建,则可直接作为Windows服务使用
sc create GogsGit start= auto binPath= "\"D:\gogs\gogs.exe\" web --config \"D:\gogs\custom\conf\app.ini\""
除了自带的支持外,也可以使用通用的NSSM程序创建gogs服务。
Windows服务的路径问题
配置文件中如果是用了相对路径,比如
[database]
PATH = data/gogs.db
在普通启动模式下是能正常运行,但在服务模式下却不能正常访问已有数据,这是因为在服务程序的相对路径并不是exe的路径,而是服务控制程序的路径
C:\Windows\system32
在配置文件中使用绝对路径可解决该问题。