Docker入門實戰(二)——搭建gitlab伺服器
阿新 • • 發佈:2018-11-15
一、 安裝gitlab
sudo docker run --detach --hostname gitlab.example.com --privileged=true \ --publish 18083:443 --publish 18081:80 --publish 18082:22 --name gitlab --restart always \ --volume /srv/gitlab/config:/etc/gitlab --volume /srv/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest
--detach(-d):後臺執行,並返回容器ID
--privileged=true:特殊許可權執行,允許檔案掛載
--publish(-p) :埠對映
--name:指定容器名稱
--restart always:docker啟動時執行容器
--volume(-v):檔案掛載對映
最後一位:容器的映象來源
#管理員賬號:root
二、 配置IP
第一步、修改gitlab.yml檔案
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
第二步、修改gitlab.rb檔案
vim /etc/gitlab/gitlab.rb
最後,重啟服務:gitlab-ctl restart
三、 配置郵件服務
第一步、安裝sendMail:傳送門
第二步、修改gitlab配置檔案(最好進入容器內修改),進入vim /etc/gitlab/gitlab.rb,修改GitLab email server settings,最後重啟gitlab:/opt/gitlab/bin/gitlab-ctl reconfigure;
#配置163郵件伺服器
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = " [email protected]"
gitlab_rails['smtp_password'] = "xxx"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['gitlab_email_from'] = "[email protected]"
user["git_user_email"] = "xxx"
四、減少記憶體佔用
1、減少程序數
修改配置檔案/etc/gitlab/gitlab.rb中的worker_processes:
unicorn['worker_processes'] = 2
預設是被註釋掉的,官方建議該值是CPU核心數加一,可以提高伺服器的響應速度,如果記憶體只有4G,或者伺服器上有其它業務,就不要改了,以免記憶體不足。另外,這個引數最小值是2,設為1,伺服器可能會卡死。
2、減少資料庫快取
postgresql['shared_buffers'] = "256MB"
預設為256MB,可適當改小
3、減少資料庫併發數
postgresql['max_worker_processes'] = 8
預設為8,可適當改小
4、減少sidekiq併發數
sidekiq['concurrency'] = 25
預設是25,可適當改小
5、啟用Swap分割槽
使用Swap的方法,請自行搜尋
需要注意的是,修改完配置以後,需要執行下面的命令使配置生效:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart