官方中文教程 https://www.gitlab.com.cn/ins...
Docker 方式安裝 GitLab 請見(推薦使用Docker安裝): https://segmentfault.com/a/11...
環境要求:內存至少4G,GitLab是很耗內存滴html
在 CentOS 系統上,下面的命令將會打開系統防火牆 HTTP 和 SSH 的訪問。python
$ sudo yum install -y curl policycoreutils-python openssh-server $ sudo systemctl enable sshd $ sudo systemctl start sshd $ sudo firewall-cmd --permanent --add-service=http $ sudo systemctl reload firewalld
安裝 Postfix ,用來發送郵件,在安裝 Postfix 的過程當中選擇 'Internet Site'。nginx
$ sudo yum install postfix $ sudo systemctl enable postfix $ sudo systemctl start postfix
也能夠配置自定義的 SMTP 服務器。git
gitlab-ce 是社區版,免費
gitlab-ee 是企業版,收費web
$ curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash $ sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce # 安裝 GitLab
若是提示鏈接超時,可使用 清華大學開源軟件鏡像站:https://mirror.tuna.tsinghua....。
進入該網站後,有詳細的安裝步驟,跟着安裝便可。redis
這裏介紹一下在CentOS中使用 清華大學開源軟件鏡像站安裝:
先還原yum源, 刪掉gitlab-ce源 :sql
$ ls -l /etc/yum.repos.d/ # 查看源配置項 $ mv /etc/yum.repos.d/gitlab_gitlab-ce.repo /etc/yum.repos.d/gitlab_gitlab-ce.repo.bak # 備份源配置項(也能夠直接刪除 rm)
新建 /etc/yum.repos.d/gitlab-ce.repo,內容爲shell
[gitlab-ce] name=Gitlab CE Repository baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/ gpgcheck=0 enabled=1
再執行數據庫
$ sudo yum makecache $ sudo yum install gitlab-ce
安裝完之後 /opt/gitlab/ 目錄結構apache
/opt/gitlab/ ├── backups ├── git-data │ └── repositories │ └── root ├── gitlab-ci │ └── builds ├── gitlab-rails │ ├── etc │ ├── shared │ │ ├── artifacts │ │ ├── lfs-objects │ │ └── pages │ ├── sockets │ ├── tmp │ ├── upgrade-status │ ├── uploads │ └── working ├── gitlab-shell ├── gitlab-workhorse ├── logrotate │ └── logrotate.d ├── nginx │ ├── client_body_temp │ ├── conf │ ├── fastcgi_temp │ ├── logs -> /var/log/gitlab/nginx │ ├── proxy_cache │ ├── proxy_temp │ ├── scgi_temp │ └── uwsgi_temp ├── postgresql │ └── data │ ├── base │ │ ├── 1 │ │ ├── 12918 │ │ ├── 12923 │ │ └── 16385 │ ├── global │ ├── pg_clog │ ├── pg_multixact │ │ ├── members │ │ └── offsets │ ├── pg_notify │ ├── pg_serial │ ├── pg_snapshots │ ├── pg_stat_tmp │ ├── pg_subtrans │ ├── pg_tblspc │ ├── pg_twophase │ └── pg_xlog │ └── archive_status └── redis
啓動命令
$ sudo gitlab-ctl reconfigure # 首次啓動也要用此命令。從新加載配置並啓動 $ sudo gitlab-ctl start # 啓動 $ sudo gitlab-ctl stop # 中止
/etc/gitlab/ 目錄結構:
/etc/gitlab/ ├── gitlab.rb ├── gitlab-secrets.json └── ssl └── trusted-certs
gitLab基本配置集中在 /etc/gitlab/gitlab.rb 文件, 每一個參數的做用和配置請參考官網的配置說明.
配置參數:
### Advanced settings # unicorn['listen'] = 'localhost' # unicorn['port'] = 8090 #默認是8080端口 nginx['listen_port'] = 8081 # gitlab nginx 端口。默認端口爲:80 external_url 'http://192.168.137.129' # clone時顯示的地址,gitlab 的域名
配置:
$ sudo gitlab-ctl stop # 先中止 GitLab 服務 $ vim /etc/gitlab/gitlab.rb # 修改配置文件
進行任何改動後, 保存退出, 在命令行逐個輸入如下命令使配置生效
啓動數據庫, 否則 reconfigure 報錯
$ sudo gitlab-ctl restart postgresql $ sudo gitlab-ctl reconfigure $ sudo gitlab-ctl start
系統默認的管理員帳號爲 root,第一次訪問 GitLab,會要求初始化管理員帳號的密碼。
裝好後,你會發現一個問題;gitlab 實際上是個web;他自帶了個nginx;若是你自己也是一臺服務器的話,上面也會裝有 apache 或者 nginx 等;那麼端口就衝突了;
更改gitlab自帶nginx的默認端口便可
$ sudo gitlab-ctl stop # 中止 $ sudo rpm -e gitlab-ce # 卸載 $ ps aux | grep gitlab # 查看守護進程 $ kill -9 18777 # 殺掉守護進程 $ find / -name gitlab | xargs rm -rf # 刪除全部包含gitlab的文件