为gogs建立一个系统账户
在gogs官方有介绍,不建议直接使用root账户运行,这样风险太高了,平时我们发布应用也不建议这样。
sudo useradd git
添加完用户后,还需要做一个配置,不然的后在后面操作还会遇到问题,官网文档中只是提到创建用户,但是给用户的文件夹分配权限啊等问题没有提到,当然官方不可能写的这么详细,他们假设看文档的人都是有linux基础的,这个就得我们自己脑补了。
添加用户后需要修改一下/etc/sudoers
在文件以下位置加入
## Allow root to run any commands anywhere
root ALL=(ALL) ALL # 这个是系统原有的
git ALL=(ALL) NOPASSWD:ALL
NOPASSWD:ALL
表示执行sudo
不需要用户密码
修改/etc/sudoers
文件前需要把它改为可读写状态,不然编辑了无法保存,该文件默认是只读。
chmod u+w /etc/sudoers 改为读写
chmod u-w /etc/sudoers 只读
编辑完成后,建议把/etc/sudoers
改为只读状态
给用户分配权限
su git
切换为git用户,我操作的时候发现切换为git
用户,默认的home
属于root 组及root用户,git用户没有操作权限,这个时候我们就需要把home改为git及对应的组
chown git:git /home/gogs/**
安装git
sudo yum install git
下载安装包并安装
https://gogs.io/docs/installation/install_from_binary
根据自己的linux系统版本下载对应gogs安装包, 然后使用 tar xvf 解压对应的目录,例如:
sudo tar xvf gogs_0.11.91_linux_amd64.tar.gz -C /home/gogs/
这里建议把文件解压到git用户的home里面,因为gogs里面很多的配置都是放在git用户的home里面,这样可以减少我们修改的成本。
解压完成后,建议创建目录及文件custom/conf/app.ini
,custom
属于gogs文件的子目录。
touch -c custom/conf/app.ini # 使用该命令即可
官方有解释为什么要创建这样一个目录及配置文件,这个配置文件是让我们修改默认配置而建立的。因为不建议直接修改原配置文件。具体的配置模板见GitHub app.ini
运行
./gogs web