当前位置: 首页 > 后端技术 > PHP

GitLab搭建连接自建Nginx

时间:2023-03-29 14:21:53 PHP

前言我一生的文章都会放在这里,我的博客,希望每一行代码,每一段文字,都能对你有所帮助。https://github.com/CrazyCodes...大家好,我是CrazyCodes。这篇文章的标题有点严肃。这是一篇非常简单的教学文章。我希望它可以帮助有需要的人。GitLabGitLab与GitHub、码云一样,是以web形式存在的在线管理Git仓库,拥有优雅的可视化操作页面。当然,这篇文章我们不介绍这个没用的。由于GitLab/Hub或码云对免费用户不够友好,对库容量或协作者有一些限制,GitHub的提交速度对中国程序员来说甚至比蜗牛还慢。网上有很多关于GitLab安装的文章,因为GitLab在安装过程中会默认安装另外一个Nginx,难免会和已有的Nginx发生冲突。写这篇文章的主要目的是对GitLab现有的Nginx服务如何配置服务器做一个指导。安装服务器版本:(阿里云)CentOSLinuxrelease7.6.1810GitLab版本:12.4.0-eeNginx版本:nginx/1.17.0基本上是比较新的版本,开始吧!第一步:进入GitLab官网https://about.gitlab.com/install/第二步:执行很多牛逼的命令sudoyuminstall-ycurlpolicycoreutils-pythonopenssh-serversudosystemctlenablesshdsudosystemctlstartsshdsudofirewall-cmd--permanent--add-service=httpsudofirewall-cmd--permanent--add-service=httpssudosystemctlreloadfirewalld第三步:下载GitLab安装文件curlhttps://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh|sudobash第四步:安装sudoEXTERNAL_URL="https://gitlab.example.com"yuminstall-ygitlab-eeEXTERNAL\_URL默认这个配置。毕竟我们不需要GitLab自带的NginxStep5:Completion就这么简单,安装完成。首次访问时,系统会要求您重置密码。用户名默认为root配置安装完成后,需要对已有的GitLab进行一些配置更改。官方文档:https://docs.gitlab.com/12.4/omnibus/settings/nginx.html#using-a-non-bundled-web-serverDisableNGINX在文件/etc/gitlab/gitlab.rb下,配置Settofalseginx['enable']=false设置owninguser需要在内部配置文件/etc/gitlab/gitlab.rb中添加自建Nginx的owninguser,并设置配置为www-data为Debian/Ubuntu,RHEL/CentOS默认用户为www-data,NGINX用户为nginx。当然,如果安装nginx时没有指定用户,也有可能是root。当然也可以使用命令cat/usr/local/nginx/conf/nginx.conf|grepuser查看属于他们的用户。其实root用户是写在配置文件里的;#log_formatmain'$remote_addr-$remote_user[$time_local]"$request"'#'"$http_user_agent""$http_x_forwarded_for"';回到正题,修改配置为root(刚才讲了,为什么是root)web_server['external_users']=['root']这个设置是一个Array,可以添加多个用户。设置完成后运行命令sudogitlab-ctlreconfigure配置生效添加虚拟主机GitLab已经为开发者准备了相应的vhost文件。可以通过访问下面的链接获取https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/web-server配置完成后,执行nginx-sreload。原理很简单。我对其他配置了解不多。我明白了,大概反向代理就是这样转发请求的。问题是在最新的版本中,如果像上面这样配置,在提交过程中可能会出现422错误。具体原因不清楚。我遇到这个问题后,配置了ssl,问题就解决了。致谢大部分都是官方的文字,可能比较难找,所以网上经常出现这个问题,但是没有解决办法,所以写了这么一篇水文帮助有需要的人,当然还是推荐阅读官网文档。感谢您阅读到这里,希望本文能对您有所帮助。