GitLab配置
1、修改GitLab綁定的域名
a、修改/etc/gitlab/gitlab.rb配置文件,修改成自己的域名
1 external_url 'http://gitlab.example.com'
b、使配置生效
停止服務命令:gitlab-ctl stop
配置生效命令:gitlab-ctl reconfigure
c、啟動服務
命令:gitlab-ctl start
2、修改GitLab倉庫存儲位置,GitLab倉庫默認位子:/var/opt/gitlab/git-data
a、創建/data/soft/gitlab/gitlab-data目錄,作為倉庫存儲目錄
命令:mkdir /data/soft/gitlab/gitlab-data
b、修改gitlab配置文件,找到git_data_dir
命令:vim /etc/gitlab/gitlab.rb
增加內容:
1 git_data_dirs({
2 "default" => { 3 "path" => "/data/soft/gitlab/gitlab-data" 4 } 5 })
c、是配置生效
停止服務命令:gitlab-ctl stop
配置生效命令:gitlab-ctl reconfigure
d、啟動服務
命令:gitlab-ctl start
3、修改nginx端口,nginx默認端口是80,有可能被占用,修改成其他端口
a、修改/etc/gitlab/gitlab.rb配置文件
1 nginx['listen_port'] = 28000
b、修改/var/opt/gitlab/nginx/conf/gitlab-http.conf文件
1 listen *:28000;
c、使配置生效
停止服務命令:gitlab-ctl stop
配置生效命令:gitlab-ctl reconfigure
d、啟動服務
命令:gitlab-ctl start
4、修改unicorn端口,unicorn默認端口是8080,有可能被占用,修改成其他端口
a、修改/etc/gitlab/gitlab.rb配置文件
1 unicorn['port'] = 28001
b、修改/var/opt/gitlab/gitlab-rails/etc/unicorn.rb文件
1 listen "127.0.0.1:28001", :tcp_nopush => true
c、使配置生效
停止服務命令:gitlab-ctl stop
配置生效命令:gitlab-ctl reconfigure
d、啟動服務
命令:gitlab-ctl start
5、修改prometheus端口,prometheus監控默認使用端口是9090,有可能被占用,修改成其他端口
a、修改/etc/gitlab/gitlab.rb配置文件
prometheus['listen_address'] = 'localhost:28002'
b、使配置生效,參考3點
6、優化GitLab性能,修改gitlab配置文件/etc/gitlab/gitlab.rb
官方推薦最低物理配置是 2核4G(本例使用的是1核2G運行比較慢)
a、減少進程數與超時時間
1 # 超時時間
2 unicorn['worker_timeout'] = 60 3 4 # 不能低於2,否則卡死 worker=CPU核數+1 5 unicorn['worker_processes'] = 2
b、GitLab默認使用了PostgreSQL,優化PostgreSQL
# 減少數據庫緩存大小 默認256,可適當改小
postgresql['shared_buffers'] = "256MB"
# 減少數據庫並發數
postgresql['max_worker_processes'] = 8
# 減少sidekiq並發數
sidekiq['concurrency'] = 10
c、減少unicorn內存使用
1 # 減少內存 2 unicorn['worker_memory_limit_min'] = "200 * 1 << 20" 3 unicorn['worker_memory_limit_max'] = "300 * 1 << 20"
7、配置郵箱服務SMTP服務器
本例使用的是阿里雲ECS服務器,TCP 25端口是默認的郵箱服務端口。基於安全考慮,雲服務器ECS的25端口默認受限。阿里雲建議使用465端口發送郵件
SMTP服務器設置參考:https://docs.gitlab.com/omnibus/settings/smtp.html
a、修改配置文件/etc/gitlab/gitlab.rb
1 gitlab_rails['smtp_enable'] = true 2 gitlab_rails['smtp_address'] = "smtp.server" 3 gitlab_rails['smtp_port'] = 465 4 gitlab_rails['smtp_user_name'] = "smtp user" 5 gitlab_rails['smtp_password'] = "smtp password" 6 gitlab_rails['smtp_domain'] = "example.com" 7 gitlab_rails['smtp_authentication'] = "login" 8 gitlab_rails['smtp_enable_starttls_auto'] = true 9 gitlab_rails['smtp_openssl_verify_mode'] = 'peer' 10 11 # If your SMTP server does not like the default 'From: gitlab@localhost' you 12 # can change the 'From' with this setting. 13 gitlab_rails['gitlab_email_from'] = 'gitlab@example.com' 14 gitlab_rails['gitlab_email_reply_to'] = 'noreply@example.com'
b、使配置生效
停止服務命令:gitlab-ctl stop
配置生效命令:gitlab-ctl reconfigure
c、啟動服務
命令:gitlab-ctl start
9、GitLab漢化
GitLab漢化參考文檔:https://gitlab.com/xhang/gitlab/wikis/home
GitLab漢化項目Git:https://gitlab.com/xhang/gitlab
a、查看gitlab版本
命令:cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
b、克隆漢化版本庫
命令:git clone https://gitlab.com/xhang/gitlab.git
c、比較漢化標簽和原標簽,導出 patch 用的 diff 文件
命令:git diff v${gitlab_version} v${gitlab_version}-zh > ../${gitlab_version}-zh.diff
d、導入漢化補丁
命令:gitlab-ctl stop
命令;patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 9.0.0-zh.diff
可能出現如一下錯誤:這是因為補丁中有一些較新的文件,但是我們安裝的gitlab並沒有這個文件存在
解決辦法:一直按回車,跳過即可
e、啟動GitLab
命令:gitlab-ctl start
f、執行重新配置命令
命令:gitlab-ctl reconfigure
漢化中出現問題,請重新安裝 GitLab(注意備份數據)。
建議不要漢化,多學英文