GitLab項目域名或IP設置及修改
1、 編輯gitlab.yml配置文件
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
找到host,並修改為你要配置的域名或IP
1 ## GitLab settings 2 gitlab: 3 ## Web server settings (note: host is the FQDN, do not include http://) 4 host: 192.168.0.201 5 port: 80 6 https: false
2、 編輯gitlab.rb文件
vim /etc/gitlab/gitlab.rb
找到external_url,修改成對應的域名或IP
1 ## Url on which GitLab will be reachable. 2 ## For more details on configuring external_url see: 3 ## https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/configuration.md#configuring-the-external-url-for-gitlab 4 external_url 'http://192.168.0.201'
3、 重啟GitLab服務
gitlab-ctl restart
端口映射訪問gitlab外部URL配置經驗
在gitlab的安裝過程中,有一步是設置external_url
顧名思義,在這里配置的是從外部機器訪問gitlab的ip或者域名,后面可以加端口號。
如果gitlab與訪問它的客戶機在同一網絡,或者gitlab就在公網上,這么設置是可以的。
但是,如果gitlab部署在DMZ,需要通過防火牆映射出去,這時如果望文生義的將external_url設置為外網IP+端口或者外網域名,就會導致無法訪問GITLAB。
究其原因分析如下:
1、external_url配置的是客戶機訪問gitlab的ip、域名、端口。而通過防火牆映射的時候,實際是防火牆在訪問它,而不是外網終端訪問它。所以,external_url針對的應該是防火牆訪問它時的IP、域名或者端口,因此,不要設置外外網IP+端口或者外網域名。
2、外網訪問時,訪問的是防火牆映射出來的IP、域名或者端口,不需要在external_url中設置。
示例:
在內網192.168.1.222主機上部署了gitlab
使用動態DNS 域名 abc.gicp.net
對外端口為9999
在防火牆上進行映射,abc.gicp.net 9999映射到192.168.1.222 80
那么gitlab的external_url就應該是http://192.168.1.222,默認80端口
這樣,從互聯網就可以通過abc.gipc.net:9999訪問部署在內網的gitlab了。
有人會問,這樣設置之后,在新建項目時,項目的url是abc.gipc.net還是192.168.1.222呢?
我們會驚喜地發現,項目url不是external_url地址,而是防火牆映射出去的訪問地址或域名。