在centos下配置gitLab

本文详细记录了在CentOS系统中配置gitLab遇到的问题及解决方案,包括nginx配置问题、用户.ssh文件权限设置、git clone找不到仓库、gitLab-shell授权限制以及如何使用ssh key进行安全登录。在解决过程中,还提到了如何处理启动时的socket冲突问题,以及客户端使用puttygen和TortoiseGit进行操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置了gitLab之后首先是nginx提示505,就是资源找不到之类,但是直接通过端口3000去访问gitLab是可以,看来这就是nginx的问题,之后给配置nginx root权限解决

又不用户下不存在.ssh文件,我就直接mkdir了一个,然后ssh key方式就无法登陆了,切换到其他用户,完全没问题,后来对比了一下两个用户.ssh文件的属性,发现直接mkdir的权限太高了,之后google,知道,安全起见,需要限制该文件的权限。

各项配置号之后,比较坑的又有了,在配置ssh key之前,发现git的时候clone找不到repositories,gitlab的配置文件仓库路径写的也很清楚啊,之后在git url地址前加上repositories/才找到,但这种情况只在使用gitlab服务器密码登录的时候才会出现,在之后使用ssh key认证登陆的时候,需要将repositories去掉。在安全起见,git服务器的密码肯定不能告诉给所有人。所以这种方法不可用。

gitLab使用gitLab-shell添加到得authorized_keys(~/.ssh/)是对ssh的访问做了限制的,具体的限制可以查看command,直接访问会提示Server refused allocate pty,所以在配置了ssh key之后,用户可以clone,push等操作。禁止用录登录。这样git服务器的数据也就安全了。客户端的用户只需要添加key之后就可以提交。如果你有服务器密码,将authorized_keys的command删除,这样就是普通的ssh key登录。需要将repositories加上。

在客户端使用puttygen生成公钥和密钥,使用TortoiseGit来图形化操作git

在linux重启的时候总是提示rb:234:in 'initialize'

Address already in use - "/home/git/gitlab/tmp/sockets/gitlab.socket" (Errno::EADDRINUSE)

那就直接rm了,删掉这个文件,手动启动gitlab,

sudo service mysqld start 

sudo service redis start 

sudo service gitlab start 

sudo service nginx start

sudo service iptables stop

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值