搭建gogs遇到的坑

来源:互联网 发布:投资新三板风险知乎 编辑:程序博客网 时间:2024/06/16 13:11

1.无法连接ssh,显示connection refuse。

    原因是“custom/conf/app.ini”没有开启ssh功能,改为以下配置就行了

START_SSH_SERVER = true

2.配置了ssh后,gogs无法启动,错误信息是:Fail to start SSH server: listen tcp 0.0.0.0:22: bind: permission denied
       这个错误是用于服务器使用了端口22,所以要更改服务器gogs的端口号,

SSH_PORT         = 1111

3.使用ssh提示没有权限

     这是由于没有添加公共钥的原因,按下面方法添加即可

在本机生成公钥

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
拷贝公钥里面的内容   cat /home/user/.ssh/id_rsa.pub,在gogs的用户设置里面的“SSH 密钥”栏目就可以添加了。

git config --global user.name "Your Name"git config --global user.email "email@example.com"


4.gogs无法开机启动

按照常规的方式添加脚本到 “/etc/init.d/”下竟然没有开机启动。在网上发现其他方式可以实现,主要是修改"/etc/rc.local"文件,在最后一行添加以下内容

/bin/su - git -c "/usr/bin/nohup /home/soft/gogs/gogs web"

5.在使用gogs的时候遇到各种各样的奇怪问题不知道怎样入手

gogs是有日志系统,通过查看日志文件就能知道哪里出错了,日志的路径在/gogs/log/,动态查看日志使用下面的命令很方便

tail -F /gogs/log/serv.logtail -F /gogs/log/gogs.log

6.gogs默认使用本地配置,但是在vps上不知道怎样配置。

      使用vpn使服务器和本地处于同一网段,再利用: “http://0.0.0.0:3000” ,进行配置。


7.如何通过公网ip访问搭建在vps上的gogs

       只需要配置“custom/conf/app.ini”文件“ROOT_URL“

ROOT_URL         = http://vps的ip地址/

8.如何通过域名访问gogs网站

需要利用nginx反向代理就可以实现,简单来说是通过访问vps的网址会指向nginx,而nginx又将访问间接指向gogs。

通过配置nginx的配置文件可以实现“/usr/local/nginx/conf/nginx.conf”,修改如下:

        location / {                proxy_pass http://127.0.0.1:3000/;                proxy_redirect default;           }
 

9.centos上面没有安装nginx,通过命令也无法安装(解决不了依赖关系)

      最好的方法是通过yum install来安装nginx,但是安装不了只能自己编译nginx了。编译方式如下:

yum install gcc-c++yum install -y pcre pcre-develyum install -y zlib zlib-develyum install -y openssl openssl-develwget https://nginx.org/download/nginx-1.12.2.tar.gztar -zxvf https://nginx.org/download/nginx-1.12.2.tar.gzcd nginx-1.12.2./configuremakemake install
最后在"/etc/rc.local/"添加开机启动项

/usr/local/nginx/sbin/nginx


10.无法使用git clone,提示代码仓库不存在,可是在vps上面是看到这个仓库的

      反复修改配置文件,利用log跟踪问题所在,但是问题一直解决不了。最后通过删除gogs,重新解压一个就解决问题了。


参考资料:

CentOS 7 下安装 Nginx

使用 gogs 搭建私人 git 服务器 | nginx 添加反向代理到二级域名


原创粉丝点击