1. 配置docker-compose
這裏用到了一箇中文版的docker鏡像。https://hub.docker.com/r/twang2218/gitlab-ce-zh/
version: '3'
services:
gitlab:
image: 'twang2218/gitlab-ce-zh:9.4'
restart: unless-stopped
hostname: 'fantj.gitlab.top'
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://fantj.gitlab.top:9999'
gitlab_rails['time_zone'] = 'Asia/Shanghai'
# 需要配置到 gitlab.rb 中的配置可以在這裏配置,每個配置一行,注意縮進。
# 比如下面的電子郵件的配置:
# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "[email protected]"
# gitlab_rails['smtp_password'] = "password"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = true
# gitlab_rails['gitlab_email_from'] = '[email protected]'
ports:
- '9999:9999'
#- '443:443'
#- '22:22'
volumes:
- /home/fantj/app/docker/compose/gitlab/config:/etc/gitlab
- /home/fantj/app/docker/compose/gitlab/data:/var/opt/gitlab
- /home/fantj/app/docker/compose/gitlab/logs:/var/log/gitlab
2. 配置hosts
[fantj@lalala gitlab]$ cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 www.xmind.net
127.0.0.1 fantj.gitlab.top
3. 創建目錄
[fantj@lalala gitlab]$ pwd
/home/fantj/app/docker/compose/gitlab
[fantj@lalala gitlab]$ ll
總用量 16
drwxrwxr-x 3 root root 4096 9月 4 11:37 config
drwxr-xr-x 18 root root 4096 9月 4 11:42 data
-rw-rw-r-- 1 fantj fantj 1286 9月 4 11:42 docker-compose.yml
drwxr-xr-x 19 polkitd fantj 4096 9月 4 11:38 logs
4. 啓動
sudo docker-compose up -d
訪問http://fantj.gitlab.top:9999
5. 設置密碼並登錄
設置完密碼後,超級用戶賬號默認是root。
登錄
6. 設置和使用
設置->設置
設置ssh和http服務
設置註冊服務開關
設置項目限制
設置頭像來源等等
內存修改
改之前先看看它有多吃內存。。。
[fantj@lalala workspace]$ free -h
total used free shared buff/cache available
Mem: 15Gi 8.9Gi 246Mi 1.5Gi 6.4Gi 4.8Gi
Swap: 7.8Gi 4.0Mi 7.8Gi
修改方法有兩種,一種是進入docker交互模式修改,一種是在docker-compose中設置參數。
注意:因爲我做了docker數據卷映射在本地的/home/fantj/app/docker/compose/gitlab/config
目錄中,所以只需要修改config/gitlab.rb
的參數即可。
1、減少進程數
修改配置文件
gitlab.rb
中的worker_processes
:
unicorn['worker_processes'] = 2
默認是被註釋掉的,官方建議該值是CPU核心數加一,可以提高服務器的響應速度,如果內存只有4G,或者服務器上有其它業務,就不要改了,以免內存不足。另外,這個參數最小值是2,設爲1,服務器可能會卡死。
2、減少數據庫緩存
默認爲256MB,可適當改小
postgresql['shared_buffers'] = "256MB"
3、減少數據庫併發數
默認爲8,可適當改小
postgresql['max_worker_processes'] = 8
4、減少sidekiq併發數
默認是25,可適當改小
sidekiq['concurrency'] = 25
重啓服務
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart