1. 程式人生 > >華為雲伺服器實戰 之 Gitlab安裝與配置使用

華為雲伺服器實戰 之 Gitlab安裝與配置使用

timg?image&quality=80&size=b9999_10000&sec=1558352846097&di=d0f7d915a92488097c2226f057d5c7a4&imgtype=0&src=http%3A%2F%2Fimgcdn.sdk.cn%2Farticle%2FxczMki9edYeV30djqF1R.png

簡介

    GitLab是一個利用Ruby on Rails開發的開源應用程式,實現一個自託管的Git專案倉庫,可通過Web介面進行訪問公開的或者私人專案。

    它擁有與GitHub類似的功能,能夠瀏覽原始碼,管理缺陷和註釋。可以管理團隊對倉庫的訪問,它非常易於瀏覽提交過的版本並提供一個檔案歷史庫。

    團隊成員可以利用內建的簡單聊天程式(Wall)進行交流。它還提供一個程式碼片段收集功能可以輕鬆實現程式碼複用,便於日後有需要的時候進行查詢。

依賴Check

    首先,你得擁有一臺華為雲的伺服器,推薦的配置是4G記憶體以上,這裡以最低配置為例:

    image.png

    通過xshell我們連線到該伺服器:

    image.png

    安裝gitlab需要在CentOS系統上安裝所需的依賴:ssh,防火牆,postfix(用於郵件通知) ,wget等,一般來說新購的華為雲伺服器上

防火牆、wget都是已有的,這裡我們需要安裝的就是ssh和postfix

    在命令列中輸入如下命令:

yum -y install policycoreutils openssh-server openssh-clients postfix

    

    安裝成功後可以開啟相應的服務:

#開啟SSH
> systemctl start sshd

#開啟防火牆
> systemctl start firewalld

#將http服務新增到防火牆(注意新增permanent,表示永久生效)
> firewall-cmd --permanent --add-service=http

#開啟郵箱服務
> systemctl start postfix

    當然,為了使上述服務開機自啟,可以使用如下命令將這些服務加入到開機自啟中

systemctl enable sshd
systemctl enable firewalld
systemctl enable postfix

Gitlab安裝與配置

    首先,我們新增Gitlab的映象源:

wget  https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-11.9.9-ce.0.el6.x86_64.rpm

    這個映象來自清華大學開源軟體映象站,這裡我們使用了el6的11.9的版本(也是截止目前最新的版本),大家可以根據自己的需要來下載合適的版本。

    然後,我們執行安裝命令:

rpm -i gitlab-ce-11.9.9-ce.0.el6.x86_64.rpm

    執行過程可能需要些時間,耐心等待後將出現如下資訊:

    image.png

    此時表示Gitlab安裝成功

    接下來就是一些配置了,包括指定伺服器IP、埠等:

    輸入如下命令:

vi  /etc/gitlab/gitlab.rb

    在檔案中找到external_url

    image.png

    這裡大家根據自己的需要進行修改,如果需要外網訪問,可以直接寫本地地址(如localhost、127.0.0.1)

    查詢‘listen_port’,修改相應的埠

    image.png

    Gitlab預設埠是8080,所以要注意這裡設定的埠不能被佔用,如果8080已經使用,請自定義其它埠,並在防火牆設定開放相對應得埠

    一切配置完畢後我們就可以重置並啟動gitlab服務了:

#重置配置
gitlab-ctl reconfigure
#啟動gitlab
gitlab-ctl restart

    當提示“ok:run:”表示啟動成功

Gitlab使用

    安裝配置完後我們就可以通過網頁來進行訪問了

    輸入:http://ip:8080   初始賬戶為:root  首次登入的時候會要求重新設定密碼

    image.png

    設定完後重新登入

    image.png

    之後我們就可以進行專案建立、使用者建立、組建立和管理了。

    image.png

    

常見問題

    1.在使用過程中我們可能常常會碰到使用者密碼忘記,特別是root密碼,此時我們可以使用命令方式來進行密碼更新:

#進入gitlab管理控制檯
[root@ecs-vkp ~]#  gitlab-rails console production
-------------------------------------------------------------------------------------
 GitLab:       11.9.9 (ef034f6)
 GitLab Shell: 8.7.1
 postgresql:   9.6.11
-------------------------------------------------------------------------------------
Loading production environment (Rails 5.0.7.1)
#根據ID查詢使用者
irb(main):001:0> user=User.where(id:1).first
=> #<User id:1 @root>
#設定新密碼
irb(main):003:0> user.password=12345678
=> 12345678
#確認新密碼
irb(main):006:0> user.password_confirmation=12345678
=> 12345678
#確認儲存(注意save後面的!別忘記)
irb(main):007:0> user.save!
Enqueued ActionMailer::DeliveryJob (Job ID: 1c14ddfa-20f8-4170-b05f-5f7914f9498a) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", #<GlobalID:0x00007fc05bfacf30 @uri=#<URI::GID gid://gitlab/User/1>>
=> true


#此時密碼就重置成功了!

    2.普通使用者註冊問題

    由於一般的gitlab服務安裝後我們並不會配置郵箱服務,所以註冊使用者收不到郵件,此時我們用root管理員賬號進行使用者建立,建立完後進入編輯頁面設定密碼即可:

    image.png

其他的使用就看各位看官自行發揮了,Gitlab還是有很多可以研究的,包括資料備份、遷移等!

購買華為雲請