現場(環境):CentOS 7.4 套件:GitLab
原因:
團隊成員也已經習慣 git 的使用方法,
但很多時候,主管會不放心將專案放在外部網站上。
這時候就要建立自己專用的Gitlab平台。
處理方式:
大部份網路資料說的處理方式都是照原廠官方文件最好。
先安裝GitLab會需要使用到的套件。
#yum install curl policycoreutils openssh-server openssh-clients -y
其實只要更新過。上面的套件都會預設安裝在CentOS Server裏面。
啟動sshd服務
#systemctl start sshd
#systemctl enable sshd
接著因為git都會透過郵件做登入驗證,所以要安裝postfix
#yum install postfix
預設也是已經裝好,只要啟用就可以。
#systemctl start postfix
#systemctl enable postfix
接著防火牆部份要開啟httpd連線。
#firewall-cmd –permanent –add-service=http
#systemctl reload firewalld
添加gitlab mirror source
#curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
安裝GitLab Package
這邊的 EXTERNAL_URL 就是定義你之後要連接上的網址名稱。
所以這邊安裝要先處理好。不然你安裝下去會有很多麻煩。
#EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
安裝完成會出現GitLab的標誌。並且跟你說要怎麼運行
如果發現網址名稱設定錯誤。想要修改
找到下方設定檔。
# vim /etc/gitlab/gitlab.rb
這再邊更改就好
確認都沒有問題後。啟動GitLab
#gitlab-ctl reconfigure
看到下面畫面表示運作完成。
接著就在瀏覽器輸入網址
http://[網址or IP Address]
登入後先設定密碼,預設帳號為root
輸入帳號root 以及剛剛建立的密碼。
再來就可以正確的登入GitLab平台
如果後面要重啟服務 or 關閉服務。可以用下面的指令。
# gitlab-ctl restart
# gitlab-ctl stop 0
到這邊為止可以給管理者自己使用。
但是如果要讓其他使用者可以註冊使用的話,建議加上郵件寄送的功能。
這邊我們要先進行一些設定。才能夠發送驗證信件。
設定smtp服務。
#vim /etc/gitlab/gitlab.rb
設定完成後。要重新reconfigure這樣才能讓設定檔被吃進去
先啟用E-mail功能
gitlab_email_enabled = true //啟動Email功能
gitlab_email_from = xxx@xxx.com // 由誰寄件
gitlab_email_display_name = XXX //寄件人顯示的名稱
gitlab_email_reply_to = noreply@xxx.com //回覆的信箱
例如這邊想要用gmail 寄件。這邊就先把gmail的相關資訊輸入上去。
gitlab_email_from = [寄件者]@gmail.com
gitlab_email_display_name = [顯示名稱]
設定寄件的smtp
這邊一樣先把註解打開,如果是要用google寄信。這邊要另外改smtp的Port
相關設定可以詳件參考網址(https://dotblogs.com.tw/echo/2017/10/27/gitlab_smtp_setting)
smtp_enable:啟用 SMTP 功能。
smtp_address:這邊輸入Smtp Server的Domain。
smtp_port:SMTP Port (Google用587)。
smtp_user_name:輸入信箱帳號(XXX@gmail.com)。
smtp_password:輸入信箱密碼。
smtp_domain:輸入Smtp Server的Domain。
smtp_authentication:SMTP 驗證模式。(用預設的login)
smtp_enable_starttls_auto:SMTP 開啟 TLS 設定。
smtp_tls:使用 TLS 設定。
smtp_openssl_verify_mode:SMTP SSL 驗證模式。
=!====
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "帳號@gmail.com"
gitlab_rails['smtp_password'] = "gmail應用程式專用密碼"
gitlab_rails['smtp_domain'] = "smtp.gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
====!=
這邊google驗證如果有問題,參考之前的用Linux發送gmail信件文章。
接著重新載入設定檔。
# gitlab-ctl reconfigure
*有時候不知道為什麼運作完第一次都會卡住。要強制中斷後再執行一次才正常
這邊可以用gitlab測試寄信是不是正常。(詳情件參考網址)
#gitlab-rails console
>Notify.test_email('收件者信箱', '標題', '內文').deliver_now
成功發出會出現下面訊息
接著可以到收件者那邊查看
確定有收到。接著就可以開始使用者的帳號創建。
使用者要用的話。要先註冊帳號
輸入完資料後。就可以登入GitLab環境了。
之後就可以開始運用gitlab環境了。
<本篇完>
參考網址:
https://www.gitlab.com.cn/installation/
https://www.gitlab.com.cn/installation/#centos-7
https://dotblogs.com.tw/echo/2017/10/27/gitlab_smtp_setting
https://git-scm.com/book/en/v2/Git-on-the-Server-GitLab
https://cloud.tencent.com/developer/article/1007284
http://yccitman.blogspot.tw/2016/03/centos-7-gitlab.html
https://blog.csdn.net/wh211212/article/details/70224398
留言列表