从源代码安装
考虑Omnibus包安装
由于从源代码安装是一个大量的工作和容易出错,我们强烈建议快速和可靠的集成包安装(deb / rpm)。
Omnibus包更可靠的一个原因是它使用Runit来重新启动任何GitLab进程,以防其中一个进程崩溃。在频繁使用的GitLab实例上,Sidekiq后台工作人员的内存使用量会随着时间的推移而增长。Omnibus包通过让Sidekiq优雅地终止如果它占用太多内存。终止后,Runit将检测到Sidekiq没有运行,并启动它。因为源安装没有Runit,所以Sidekiq不能被终止,而且它的内存使用量会随着时间的推移而增加。
选择安装版本
确保你查看了本安装指南从你想要安装的GitLab的标签(版本)。在大多数情况下,这应该是编号最高的生产标签(其中不包含rc)。您可以在GitLab左上角(菜单栏下方)的版本下拉菜单中选择标签。
如果最高数字稳定分支不清楚,请检查GitLab博客按版本查看安装指南链接。
重要的笔记
本指南很长,因为它涵盖了许多情况,包括您需要的所有命令这是少数几个实际开箱即用的安装脚本之一.
本安装指南是为您创建并进行测试的Debian / Ubuntu操作系统。请阅读requirements.md用于硬件和操作系统需求。如果你想在RHEL/CentOS上安装,我们建议使用综合包.
这是安装生产服务器的官方安装指南。建立一个开发安装或许多其他安装选项,请参阅自述文件的安装部分.
以下步骤已知是有效的。请当你偏离时要小心从本指南。确保您没有违反GitLab对其环境所做的任何假设。例如,许多人会遇到权限问题,因为他们更改了目录的位置或以错误的用户运行服务。
如果你在本指南中发现bug/错误,请提交合并请求后,贡献指南.
概述
GitLab安装包括以下组件的设置:
- 包/依赖项
- 鲁比(人名)
- 去
- 节点
- 系统用户
- 数据库
- 复述,
- GitLab
- Nginx
1.包/依赖项
sudo
Debian默认不安装。确保您的系统是最新的并安装它。
#以root用户运行!Apt-get update -yApt-get upgrade -y安装sudo -y
注意:在安装过程中,需要手动编辑一些文件。如果您熟悉vim,请使用下面的命令将其设置为默认编辑器。如果您不熟悉vim,请跳过这一步,继续使用默认编辑器。
#安装vim并设置为默认编辑器Sudo apt-get install -y vim设置编辑器/usr/bin/vim.basic
安装所需的包(需要编译Ruby和Ruby gems的本地扩展):
Sudo apt-get install -y build-essential zlib1g-dev libml -dev libssl-dev libgdbm-dev libre2-dev libreadline-dev libncurses5-dev libffi-dev curl openssh-server checkinstall libxml2-dev libxsl -dev libcurl4-openssl-dev libicu-dev logrotate rsync python-docutils ppg -config cmake
Ubuntu 14.04 (Trusty Tahr)没有libre2-dev
套餐可用,但你可以手动安装re2.
如果您想使用Kerberos进行用户身份验证,那么请安装libkrb5-dev:
安装libkrb5-dev
注意:如果您不知道Kerberos是什么,可以假定您不需要它。
确保安装了正确的Git版本
#安装GitSudo apt-get install -y git-core#确保Git是2.9.5或更高版本git -版本
系统打包的Git太旧了吗?删除它并从源代码编译。
#删除打包的GitSudo apt-get remove git-core#安装依赖项Sudo apt-get install -y libcurl4-openssl-dev libexpat1-dev gettext libz-dev libssl-dev build-essential#从源代码下载和编译cd / tmpCurl——remote-name——progress https://www.kernel.org/pub/software/scm/git/git-2.16.3.tar.gzEcho 'dda229e9c73f4fbb7d4324e0d993e11311673df03f73b194c554c2e9451e17cd git-2.16.3.tar.gz' | shasum -a256 -c - && tar -xzf git-2.16.3.tar.gzcd git-2.16.3 /. / configureMake prefix=/usr/local all#安装到/usr/local/binSudo make prefix=/usr/local install#在编辑config/gitlab时。yml(步骤5),将git -> bin_path修改为/usr/local/bin/git
注意:为了接收邮件通知,请确保安装了邮件服务器。默认情况下,Debian附带exim4有问题而Ubuntu没有附带。推荐的邮件服务器是postfix,您可以安装它:
Sudo apt-get install -y postfix
然后选择“Internet Site”并按enter确认主机名。
2.鲁比(人名)
运行GitLab需要Ruby解释器。
注意:当前支持的Ruby (MRI)版本是2.3.0 x。GitLab 9.0放弃了对Ruby 2.1.x的支持。
Ruby版本管理器的使用,例如数位视讯,rbenv或chruby在生产环境中使用GitLab,通常会导致难以诊断问题。例如,从OpenSSH调用GitLab Shell,拥有版本管理器可以防止推入和拉出SSH。版本管理器不受支持,我们强烈建议每个人遵循下面的说明来使用系统Ruby。
Linux发行版通常有旧版本的Ruby可用,因此这些说明旨在从官方源代码安装Ruby。
如果存在,删除旧的Ruby 1.8:
Sudo apt-get删除ruby1.8
下载Ruby并编译:
Mkdir /tmp/ruby && CD /tmp/rubyCurl——remote-name——progress https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.7.tar.gzEcho '540996fec64984ab6099e34d2f5820b14904f15a ruby-2.3.7.tar.gz' | shasum -c - && tar XZF ruby-2.3.7.tar.gzcd ruby-2.3.7. / configure——disable-install-rdoc使Sudo make install
然后安装Bundler Gem:
Sudo gem安装bundle -no-ri -no-rdoc
3.去
自从GitLab 8.0以来,GitLab有几个用Go编写的守护进程。要安装GitLab,我们需要一个Go编译器。下面的说明假设您使用64位Linux。您可以在网站上找到其他平台的下载去下载页面.
#删除前Go安装文件夹Sudo rm -rf /usr/local/goCurl——remote-name——progress https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gzEcho '1862f4c3d3907e59b04a757cfda0ea7aa9ef39274af99a784f5be843c80c6772 go1.8.3.linux-amd64.tar.gz' | shasum -a256 -c - && \sudo tar -C /usr/local -xzf go1.8.3.linux-amd64.tar.gzSudo ln -sf /usr/local/go/bin/{go,godoc,gofmt} /usr/local/bin/rm go1.8.3.linux-amd64.tar.gz
4.节点
从GitLab 8.17开始,GitLab要求使用Node来编译javascript资产,使用Yarn来管理javascript依赖项。目前这些的最低要求是节点>= v6.0.0和纱线>= v1.2.0。在许多发行版中,官方软件包库提供的版本已经过时,因此我们需要通过以下命令进行安装:
#安装节点v8.xCurl—location https://deb.nodesource.com/setup_8.x | sudo bash -Sudo apt-get install -y nodejsCurl——silent——show-error https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -回显"deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.listSudo apt-get update须藤apt-get安装纱线
5.系统用户
创建一个git
GitLab用户:
sudo adduser—disabled-login—gecos 'GitLab' git
6.数据库
我们建议使用PostgreSQL数据库。对于MySQL,请检查MySQL安装指南.
请注意:因为我们需要使用扩展和并发索引删除,你至少需要PostgreSQL 9.2。
安装数据库包:
sudoapt-get安装可能是Postgresql Postgresql -client libpq-dev Postgresql -contrib
为GitLab创建一个数据库用户:
sudo- upostgres psql- dtemplate1- c创建用户git CREATEDB;"
创建
pg_trgm
扩展(GitLab 8.6+所需):sudo- upostgres psql- dtemplate1- c"创建扩展如果不存在pg_trgm;"
创建GitLab生产数据库,并授予数据库的所有权限:
sudo- upostgres psql- dtemplate1- c创建数据库gitlabhq_production OWNER git;
尝试用新用户连接到新数据库:
sudo- ugit- hpsql- dgitlabhq_production
检查是否
pg_trgm
扩展已启用:选择真正的为启用从pg_available_extensions地方的名字=“pg_trgm”AND installed_version不是NULL;
如果扩展被启用,这将产生以下输出:
启用---------t(1行)
退出数据库会话:
gitlabhq_production >\问
7.复述,
GitLab至少需要Redis 2.8。
如果你使用的是Debian 8或Ubuntu 14.04及以上版本,那么你可以简单地安装Redis 2.8:
sudoapt-get安装redis-server
如果您使用的是Debian 7或Ubuntu 12.04,请遵循上的特殊文档一个备用的Redis安装.完成后,按照指南的其余部分进行操作。
#配置redis使用socketSudo cp /etc/redis/redis.conf /etc/redis/redis.conf.orig#通过设置'port'为0禁用Redis对TCP的监听Sed 's/^port .*/port 0/' /etc/redis/redis.conf. s/^port .*/port 0/'输入| sudo tee /etc/redis/redis.conf#启用Debian / Ubuntu默认路径下的Redis socketEcho 'unixsocket /var/run/redis/redis。Sock ' | sudo tee -a /etc/redis/redis.conf#为redis组的所有成员授予套接字权限Echo 'unixsocketperm 770' | sudo tee -a /etc/redis/redis.conf创建包含套接字的目录mkdir /var/run/redisChown redis:redis /var/run/redisChmod 755 /var/run/redis如果适用,保存包含套接字的目录如果[-d /etc/tmpfiles.d];然后回显'd /var/run/redis 0755 redis redis 10d -' | sudo tee -a /etc/tmpfiles.d/redis.conf . afi#激活redis.conf的更改Sudo服务redis-server重启#添加git到redis组sudo usermod -aG redis git
8.GitLab
#我们将安装GitLab到用户“git”的主目录cd /home/git
克隆源代码
#克隆GitLab存储库sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 10-8-stable gitlab
注意:你可以改变10-8-stable
来主
如果你想要出血边缘版本,但永远不要在生产服务器上安装master !
配置它
#进入GitLab安装文件夹cd /home/git/gitlab复制GitLab配置示例sudo -u git -H cp config/gitlab.yml。示例配置/ gitlab.yml#更新GitLab配置文件,按照文件顶部的说明sudo -u git -H editor config/gitlab.yml#复制示例secrets文件sudo -u git -H cp config/secrets.yml。示例配置/ secrets.ymlsudo -u git -H chmod 0600 config/secrets.yml#确保GitLab可以写入log/和tmp/目录sudo chown -R git log/sudo chown -R git tmp/sudo chmod -R u+rwX,go-w log/sudo chmod -R u+rwX tmp/#确保GitLab可以写入tmp/pid /和tmp/sockets/目录sudo chmod -R u+rwX tmp/pid /sudo chmod -R u+rwX tmp/sockets/创建public/uploads/目录sudo -u git -H mkdir public/uploads/#确保只有GitLab用户可以访问public/uploads/目录#现在公共/上传的文件是由gitlab-workhorse提供的Sudo chmod 0700 public/uploads#修改CI作业跟踪记录所在目录的权限sudo chmod -R u+rwX构建/#修改CI构件存放目录的权限sudo chmod -R u+rwX shared/artifacts/#修改GitLab页面所在目录的权限sudo chmod -R ug+rwX shared/pages/#复制Unicorn配置的示例sudo -u git -H cp config/unicorn.rb。示例配置/ unicorn.rb#查找核数nproc如果你希望有一个高负载的实例,启用集群模式#设置worker的数量至少为内核的数量对于2GB内存的服务器,更改工人数量为3个sudo -u git -H editor config/unicorn.rb复制示例机架攻击配置sudo -u git -H cp config/initializers/rack_attack.rb。配置初始化/ rack_attack.rb示例#为Git用户配置Git全局设置web编辑器需要# ' selflf 'sudo -u git -H git config——global core。autocrlf输入#禁用'git gc——auto',因为GitLab已经在需要时运行'git gc'sudo -u git -H git config——全局gc。汽车0#启用packfile位图sudo -u git -H git config——全局重新打包。writeBitmaps真实#启用推送选项sudo -u git -H git config——全局接收。advertisePushOptions真实#配置Redis连接设置sudo -u git -H cp config/resque.yml。示例配置/ resque.yml#如果您没有使用默认的Debian / Ubuntu配置,请更改Redis套接字路径sudo -u git -H editor config/resque.yml
重要提示:确保两者都要编辑gitlab.yml
而且unicorn.rb
以匹配您的设置。
注意:如果要使用HTTPS,请参见使用HTTPS对于其他步骤。
配置GitLab数据库设置
仅限PostgreSQL:Sudo -u git cp config/database.yml。postgresql配置/形式仅限MySQL:Sudo -u git cp config/database.yml。mysql配置/形式# MySQL和远程PostgreSQL:#更新config/database.yml中的用户名/密码。#您只需要调整生产设置(第一部分)。如果你遵循了数据库指南,请按以下步骤操作:#用你给$password的值更改“安全密码”您可以在密码周围保留双引号sudo -u git -H editor config/database.yml# PostgreSQL和MySQL:#创建config/databaseYml只对git可读sudo -u git -H chmod o-rwx config/database.yml
安装的宝石
注意:从捆绑器1.5.2开始,您可以调用bundle install -jN
(N
你的处理器内核的数量),并享受并行宝石安装与可测量的差异完成时间(~60%快)。检查核数nproc
.要了解更多信息,请查看这个帖子.首先确保您有绑定器>= 1.5.2(运行bundle - v
),因为它解决了一些问题问题这是固定1.5.2。
#对于PostgreSQL(注意,该选项表示“without…”mysql”)sudo -u git -H bundle安装——部署——没有开发测试mysql aws kerberos#或者如果你使用MySQL(注意,选项说“without…”postgres”)sudo -u git -H bundle安装——部署——没有开发测试postgres aws kerberos
注意:如果希望使用Kerberos进行用户身份验证,请省略kerberos
在——不
上面的选项。
安装GitLab Shell
GitLab Shell是专为GitLab开发的SSH访问和存储库管理软件。
#运行gitlab-shell的安装任务(如果需要替换' REDIS_URL '):sudo -u git -H bundle exec rake gitlab:shell:install REDIS_URL=unix:/var/run/redis/redis. sudo: u git -H bundle exec rake袜子RAILS_ENV=生产SKIP_STORAGE_VALIDATION=true默认情况下,GitLab -shell配置是由你的GitLab主配置生成的。#你可以检查(和修改)gitlab-shell配置如下:sudo -u git -H编辑器/home/git/gitlab-shell/config.yml
注意:如果要使用HTTPS,请参见使用HTTPS对于其他步骤。
注意:确保您的主机名可以通过正确的DNS记录或/etc/hosts中的额外行("127.0.0.1 hostname")在机器本身上进行解析。这可能是必要的,例如,如果您在反向代理后面设置GitLab。如果主机名无法解析,最终安装检查将失败,提示“check GitLab API access: FAILED”。代码:401”和推送提交将被拒绝“[remote rejected] master -> master (hook declined)”。
注意:通过禁用RubyGems可以大大减少GitLab Shell应用程序的启动时间。这可以通过几种方式来实现:
- 出口
RUBYOPT =——disable-gems
进程的环境变量 - 编译Ruby
配置——disable-rubygems
默认禁用RubyGems。不推荐用于系统级Ruby。 - 综合GitLab取代了工作线路
gitlab-shell / bin / *
脚本
安装gitlab-workhorse
GitLab-Workhorse使用GNU使.下面的命令行将安装GitLab-Workhorse/home/git/gitlab-workhorse
这是推荐的位置。
sudo -u git -H bundle exec rake "gitlab:workhorse:install[/home/git/gitlab-workhorse]" RAILS_ENV=production
你可以通过提供一个额外的参数来指定不同的Git存储库:
sudo -u git -H bundle exec rake "gitlab:workhorse:install[/home/git/gitlab-workhorse,https://example.com/gitlab-workhorse.git]" RAILS_ENV=production
初始化数据库并激活高级功能
sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production#键入'yes'以创建数据库表。#当完成时,你会看到“管理员帐户已创建:”
注意:您可以通过在环境变量中提供它们来设置管理员/root密码和电子邮件,GITLAB_ROOT_PASSWORD
而且GITLAB_ROOT_EMAIL
分别,如下所示。如果您没有设置密码(它被设置为默认密码),请等待将GitLab暴露给公共互联网,直到安装完成并第一次登录到服务器。在第一次登录时,您将被迫更改默认密码。
sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production GITLAB_ROOT_PASSWORD=你的密码GITLAB_ROOT_EMAIL=你的邮箱
安全secrets.yml
的secrets.yml
文件存储会话的加密密钥和安全变量。备份secrets.yml
安全的地方,但不要将其存储在与数据库备份相同的地方。否则,如果您的备份之一被泄露,您的秘密就会暴露。
安装初始化脚本
下载初始化脚本(将/etc/init.d/gitlab
):
Sudo cp lib/support/init。d / gitlab /etc/init.d/gitlab
如果你使用非默认文件夹或用户安装,复制并编辑默认文件:
Sudo cp lib/support/init.d/gitlab.default.example /etc/default/gitlab . exe
如果您将GitLab安装在其他目录下,或者以非默认用户的身份安装,则应该更改这些设置/etc/default/gitlab
.不要编辑/etc/init.d/gitlab
因为它将在升级时更改。
让GitLab在boot时启动:
sudo update-rc。D gitlab默认值为21
安装吉塔
#用Git获取Gitaly源代码,然后用Go编译sudo -u git -H bundle exec rake "gitlab:gitaly:install[/home/git/gitaly]" RAILS_ENV=production
你可以通过提供一个额外的参数来指定不同的Git存储库:
sudo -u git -H bundle exec rake "gitlab:gitaly:install[/home/git/gitaly,https://example.com/gitaly.git]" RAILS_ENV=production
接下来,确保配置gitaly:
#限制Gitaly socket访问Sudo chmod 0700 /home/git/gitlab/tmp/sockets/privateSudo chown git /home/git/gitlab/tmp/sockets/private如果你使用非默认设置,你需要更新config.tomlcd /home/git/gitalysudo -u git -H编辑config.toml
有关配置Gitaly的更多信息,请参见doc /政府/吉塔.
设置Logrotate
Sudo cp lib/support/logrotate/gitlab /etc/logrotate.d/gitlab . xml
查看申请状态
检查GitLab及其环境是否配置正确:
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
编译GetText PO文件
sudo -u git -H bundle exec rake gettext:compile RAILS_ENV=production
编制资产
sudo -u git -H yarn install——production——pure-lockfilesudo -u git -H bundle exec rake gitlab:assets:compile RAILS_ENV=production NODE_ENV=production
启动你的GitLab实例
Sudo服务gitlab启动#或sudo /etc/init.d / gitlab重启
9.Nginx
注意:Nginx是GitLab官方支持的web服务器。如果你不能或不想使用Nginx作为你的web服务器,看看GitLab食谱.
安装
Sudo apt-get install -y nginx
网站配置
复制示例站点配置:
Sudo cp lib/support/nginx/gitlab /etc/nginx/sites-available/gitlab . shSudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab
请确保编辑配置文件以匹配您的设置。另外,确保你的路径与GitLab匹配,特别是为'git'用户以外的用户安装时:
#将YOUR_SERVER_FQDN更改为完全限定# GitLab主机的域名。##记住匹配你的路径到GitLab,特别是#如果是为'git'以外的用户安装。##如果使用Ubuntu默认的nginx安装:#从监听行中删除default_server否则sudo rm -f /etc/nginx/sites-enabled/defaultSudo编辑器/etc/nginx/sites-available/gitlab
如果你打算启用GitLab页面,你需要使用一个单独的Nginx配置。阅读所需配置的所有信息GitLab Pages管理指南.
注意:如果要使用HTTPS,请替换gitlab
Nginx配置gitlab-ssl
.看到使用HTTPS查看HTTPS配置的详细信息。
测试配置
验证您的gitlab
或gitlab-ssl
在Nginx配置文件中输入以下命令:
Sudo nginx -t
你应该收到语法没问题
而且测试成功
消息。如果收到错误,请检查您的gitlab
或gitlab-ssl
Nginx配置文件的输入错误等,如给出的错误信息所示。
重新启动
Sudo服务nginx重启
完成了!
再次检查申请状态
为了确保你没有漏掉任何东西,用以下方法进行更彻底的检查:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
如果所有项目都是绿色的,那么恭喜你成功安装了GitLab!
注意:供应SANITIZE = true
环境变量为gitlab:检查
要从check命令的输出中省略项目名称。
初始登录
第一次登录GitLab时,请在web浏览器中访问YOUR_SERVER。
如果你没有在安装过程中提供根密码,您将被重定向到密码重置屏幕,以提供初始管理员帐户的密码。输入所需的密码,您将被重定向回登录屏幕。
默认帐号为根.提供您之前创建的密码并登录。登录后,如果您愿意,您可以更改用户名。
享受吧!
你可以使用Sudo服务gitlab启动
而且Sudo服务gitlab停止
启动和停止GitLab。
高级设置技巧
相对URL支持
看到相关URL文档有关如何使用相对URL配置GitLab的更多信息。
使用HTTPS
通过HTTPS使用GitLab:
- 在
gitlab.yml
:- 设置
港口
第1节中的选项443
. - 设置
https
第1节中的选项真正的
.
- 设置
- 在
config.yml
gitlab-shell:- 集
gitlab_url
选项到GitLab的HTTPS端点(例如。https://git.example.com
). - 方法设置证书
ca_file
或ca_path
选择。
- 集
- 使用
gitlab-ssl
Nginx示例配置而不是gitlab
配置。- 更新
YOUR_SERVER_FQDN
. - 更新
ssl_certificate
而且ssl_certificate_key
. - 检查配置文件并考虑应用其他安全和性能增强特性。
- 更新
不鼓励使用自签名证书,但如果你必须按照正常的说明使用它,那么:
生成自签名SSL证书:
Mkdir -p /etc/nginx/ssl/cd /etc/nginx/ssl/Sudo openssl req -newkey rsa:2048 -x509 -nodes -days 3560 -out gitlab。CRT -keyout gitlab.keySudo chmod o-r gitlab.key
在
config.yml
gitlab-shell集合self_signed_cert
来真正的
.
启用邮件回复
看到“通过电子邮件回复”文档有关如何设置的更多信息。
LDAP身份验证
中配置LDAP认证配置/ gitlab.yml
.编辑此文件后请重新启动GitLab。
使用自定义Omniauth提供者
构建您的项目
GitLab可以为您构建项目。要启用该特性,您需要GitLab runner为您完成该工作。检出的GitLab Runner部分安装它
添加受信任代理
如果在单独的计算机上使用反向代理,则可能希望将代理添加到可信代理列表。否则用户将显示从代理的IP地址登录。
您可以在中添加可信代理配置/ gitlab.yml
通过定制trusted_proxies
第1节中的选项。保存文件并重新配置GitLab以便更改生效。
自定义Redis连接
如果你想在非标准端口或不同的主机上连接到Redis服务器,你可以通过配置/ resque.yml
文件。
#例子生产:url:复述:/ / redis.example.tld: 6379
如果你想通过套接字连接Redis服务器,那么使用"unix:" URL方案和Redis套接字文件的路径配置/ resque.yml
文件。
#例子生产:url: unix: /道路/ /复述/套接字
中的环境变量也可以使用配置/ resque.yml
文件:
#例子生产:url: <%= ENV.fetch('GITLAB_REDIS_URL') %>
自定义SSH连接
如果在非标准端口上运行SSH,则必须更改GitLab用户的SSH配置。
#添加到/home/git/.ssh/config给你的设置一个名字(这里:override localhost)#你的远程git用户port 2222 #您的端口号主机127.0.0.1;#您的服务器名称或IP
您还需要更改相应的选项(例如。ssh_user
,ssh_host
,admin_uri
)在配置\ gitlab.yml
文件。
其他标记样式
除了一直支持的markdown样式外,GitLab还可以显示其他富文本文件。但是您可能必须安装一个依赖项才能这样做。请参阅Github-markup gem readme获取更多信息。
故障排除
“您似乎克隆了一个空存储库。”
如果你在试图克隆一个由GitLab托管的存储库时看到这条消息,这可能是由于过时的Nginx或Apache配置,或者缺少或错误配置的GitLab主力实例。仔细检查一下去安装,安装gitlab-workhorse,正确配置Nginx.
google-protobuf "LoadError: /lib/x86_64-linux-gnu/libc.so。6:版本' GLIBC_2.14'未找到"
对于google-protobuf gem的某些版本,这可能发生在某些平台上。变通办法是安装此gem的源代码版本.