1. 程式人生 > >GitLab的搭建詳細過程(親測)

GitLab的搭建詳細過程(親測)

Git的優點和缺點介紹

優點
1、適合分散式開發,強調個體

2、公共伺服器壓力和資料量都不會太大

3、速度快、靈活

4、任意兩個開發者之間可以很容易的解決衝突

5、離線可以正常提交程式碼和工作

缺點
1、學習週期相對而言比較長

2、不符合常規思維

3、程式碼保密性差,一旦開發者把整個庫克隆下來就可以完全公開所有程式碼和版本資訊

1.準備環境

Ubuntu16.04 server (搞清楚自己的環境,如果不知道 請輸入以下命令):

 [email protected]:/# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:
Ubuntu 16.10 Release: 16.10 Codename: yakkety

1.安裝依賴包:

sudo apt-get install curl openssh-server ca-certificates postfix

注:執行完成後,出現郵件配置,選擇Internet那一項(不帶Smarthost的)如下所示:
這裡寫圖片描述

選擇完後,後面的東西,隨便填吧,沒啥卵用~

2.利用清華大學的映象(https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/)來進行主程式的安裝

首先信任 GitLab 的 GPG 公鑰:
curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null
使用root使用者修改配置檔案(系統是ubuntu 16.10):
    vi /etc/apt/sources.list.d/gitlab-ce.list
    #新增以下內容
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main

如果你的系統是Ubuntu 14.04 ,那麼新增的內容為:

deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu trusty main

安裝 gitlab-ce:

sudo apt-get update
sudo apt-get install gitlab-ce

注: 有點慢 耐心等吧~
修改配置 :

vi /etc/gitlab/gitlab.rb

更改external_url =

http://192.168.1.38 (IP換成你本機的IP地址)

3.啟動sshd和postfix服務

    service sshd start
    service postfix start

4.新增防火牆規則

sudo iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

5.啟動各項服務

sudo gitlab-ctl reconfigure

有點慢,可以出去抽根菸溜達一圈~

上面這一步可能會失敗,報錯如下:這裡寫圖片描述
解決辦法:進入到檔案: /etc/gitlab/gitlab.rb,找到下面他們倆:

user[‘username’]=’git’
User[‘group’]=’git’
講git改為gitlab。然後初始化配置
sudo gitlab-ctl reconfigure

6.檢視安裝是否成功

sudo gitlab-ctl status

出現一下畫面就OK了:

    [email protected]:/# sudo gitlab-ctl status
run: alertmanager: (pid 22060) 15s; run: log: (pid 22146) 15s
run: gitaly: (pid 21990) 17s; run: log: (pid 22003) 16s
run: gitlab-monitor: (pid 22026) 16s; run: log: (pid 22030) 16s
run: gitlab-workhorse: (pid 21973) 17s; run: log: (pid 21981) 17s
run: logrotate: (pid 21526) 64s; run: log: (pid 21983) 17s
run: nginx: (pid 21498) 66s; run: log: (pid 21982) 17s
run: node-exporter: (pid 21753) 52s; run: log: (pid 22004) 16s
run: postgres-exporter: (pid 22153) 15s; run: log: (pid 22161) 14s
run: postgresql: (pid 21187) 201s; run: log: (pid 21964) 17s
run: prometheus: (pid 22039) 15s; run: log: (pid 22053) 15s
run: redis: (pid 21117) 207s; run: log: (pid 21963) 17s
run: redis-exporter: (pid 21791) 44s; run: log: (pid 22031) 16s
run: sidekiq: (pid 21465) 73s; run: log: (pid 21966) 17s
run: unicorn: (pid 21428) 79s; run: log: (pid 21965) 17s

登陸地址 ,就是剛才你剛才新增到配置檔案的那個地址登陸訪問(無需輸入埠):
這裡寫圖片描述

上來先讓你初始化密碼,剩下的就是介面畫操作。
安裝到此結束~

注:gitlab在伺服器中的預設程式碼存放的位置是 /var/opt/gitlab/git-data/repositories