Windows server 部署 gogs 服务简记

Windows server 部署 gogs 服务简记

公司需要在自己的服务器上部署一个私有的 git 远程仓库,在权衡了市面上的几款开源 git 仓库服务后,我选择了 gogs,无他,部署简单,资源占用低。花了大概一个半天的时间搭建好了,综合了 gogs 官网的文档及网络上的资料,这里做一个简单的记录,保证可用。

安装 gogs

下载 gogs 压缩包,解压,在解压下的目录,新建 log 文件夹和 conf 文件夹:
Windows server 部署 gogs 服务简记_第1张图片
Windows server 部署 gogs 服务简记_第2张图片
在里面分别新建空白的 txt 文件和 app.ini 文件备用。
在 app.ini 文件中写入自己的配置:
Windows server 部署 gogs 服务简记_第3张图片
其中 RUN_USER 的值由运行命令:

echo %COMPUTERNAME%

获得,显示的是什么,就在它之后加一个$

nssm

下载 nssm,nssm 的作用是将 gogs 注册成 windows 服务,解压,cd 到目录下,运行:

nssm install gogs

会弹出一个弹窗,弹窗中的设置参考 gogs 官方文档:

Use NSSM
Get the nssm.exe needed for your machine (32 or 64 bit; they’re packaged together in Iain’s zip file), and place it in a directory that is in (or will be added to) your %PATH% environment variable.
Open a command line as administrator and do following command to configure Gogs as a service:
C:>nssm install gogs
“NSSM service installer” will appear. Configure it as follows:
Application tab:
* Path: C:\gogs\gogs.exe
* Startup directory: C:\gogs
* Arguments: web
Windows server 部署 gogs 服务简记_第4张图片
Details tab:
* Display name: Gogs
* Description: A painless self-hosted Git service.
* Startup type: Automatic (Delayed Start)
Note that we’ve chosen delayed start, so that the service will not impact the early boot time. Gogs will start two minutes after the non-delayed services.
Windows server 部署 gogs 服务简记_第5张图片
I/O tab:
* Output (stdout): C:\gogs\log\gogs-nssm.txt
* Error (stderr): C:\gogs\log\gogs-nssm.txt
That will capture all text output that you would normally receive from Gogs on the command line console, and log it to that file instead.
Windows server 部署 gogs 服务简记_第6张图片
File rotation tab:
* Check: Rotate files
* Restrict rotation to files bigger than: 1000000 bytes
Windows server 部署 gogs 服务简记_第7张图片
Environment tab:
* Environment variables: PATH=%PATH%;C:\gogs;C:\Program Files (x86)\Git\bin
That is a guarantee that both gogs.exe and git.exe will be on the Gogs service’s path variable during runtime.
Windows server 部署 gogs 服务简记_第8张图片
Click “Install service”, and you should be confirmed that it succeeded.

成功后,可以在服务中看到 gogs 服务:
Windows server 部署 gogs 服务简记_第9张图片

nginx

需要转发请求,我选择使用 nginx。下载安装 nginx,解压,cd 到目录下,输入命令:

start nginx   (输入这一句会看到一个黑窗一闪而过)
tasklist /fi "imagename eq nginx.exe"

可以看到
Windows server 部署 gogs 服务简记_第10张图片
接下来修改 nginx 的配置,在 conf 文件夹下的 nginx.conf 文件,在 server 下添加 listen,server_name,以及配置 location 即可。
修改完配置,可以输入命令来查看配置文件中的语法是否有错误:
Windows server 部署 gogs 服务简记_第11张图片
没问题的话,重启 nginx:
在这里插入图片描述
同样的,nginx 也可以配置为 windows 的服务。

后记:

在使用的过程中发现传输太大的文件,git 会传不上去,这是问题出在 nginx 那里,它限制了传输的大小,改一下相关配置即可。

你可能感兴趣的:(http)