一 前言
關於在CentOS7上安裝Gitlab, 官方文檔已經很詳細了,步驟大家按照官方的安裝文檔一步一步安裝即可, 這里就不在累述。官方安裝文檔地址: https://about.gitlab.com/installation/#centos-7 。 在這里主要說一下再安裝官方文檔安裝過程碰到的問題及解決方法。 我這里碰到的問題,主要是由於安裝的機器無法直接連接網路,而需要設置代理。
二 問題及解決方法
問題1: 執行第一步時,運行yum install報錯, “Cannot find a valid baseurl for repo: base/7/x86_64”
這個錯誤基本指向了網絡原因,但是網絡上大部分的解決方法都是修改/etc/sysconfig/network-scripts/ifcfg-ens10 (10不是固定,不同的機器不同). 主要是下面4項
BOOTPROTO=dhcp
ONBOOT=yes
DNS1=8.8.8.8
DNS2=4.2.2.2
然后重啟網卡 #sudo service network restart, 但是我嘗試這些了解決方式, 問題依舊,后來才想到了是不是和代理有關。 於是修改/etc/yum.conf, 添加網絡代理, 問題解決
proxy=http://<address>:<port>
問題2: 執行第2步時,在運行curl命令時,報錯’curl is unable to connect to packagecloud.io over TLS’
有了第一步的教訓,大概猜想應該是網絡代理問題, 於是在執行curl之前,先設置網絡代理
export http_proxy= http://<address>:<port>
export https_proxy= http://<address>:<port>
設置完了以后,本以為會成功了,結果還是報同樣的錯誤’ curl is unable to connect to packagecloud.io over TLS’, 當時還真有點懵逼。 嘗試了一些網絡上照的解決方法,都無用。
這時注意到, 這個命令就是下載腳本,然后執行腳本。 於是先下載腳本,沒問題。證明設置的網絡有效, 再執行腳本,報錯’curl is unable to connect to packagecloud.io over TLS’,發現腳本里面又執行了curl命令,問題清楚了,開始解決。
- 下載腳本script.rpm.sh保存到tmp目錄, 也可以直接訪問這個地址https://packages.gitlab.com/gitlab/gitlab-ce/install 復制腳本到本地
- 修改腳本, 在執行curl命令之前,設置網絡代碼, 如下圖
-
運行#sudo bash /tmp/script.rpm.sh, 執行腳本, 成功
繼續按照官方文檔后續的步驟安裝,安裝成功。 Gitlab安裝完成后,默認的服務端口是80, 因為80端口太通用,所以最好改成其他端口
- 修改配置文件
/etc/gitlab/gitlab.rb,
修改external_url,直接增加端口號即可,比如使用6767端口:external_url 'http://myserver:6767'
- 修改后再次執行”sudo gitlab-ctl reconfigure”, 以便配置修改生效。