擴(kuò)展閱讀
- 有哪些鮮為人知,但是很有意思的網(wǎng)站?
- 一份攻城獅筆記
- 每天搜集 Github 上優(yōu)秀的項(xiàng)目
- 一些有趣的民間故事
- 超好用的谷歌瀏覽器、Sublime Text、Phpstorm、油猴插件合集
一、安裝Gitlab
參考 https://www.gitlab.com.cn/installation/#ubuntu
1.1 安裝并配置必要的依賴關(guān)系
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates
然后,安裝Postfix發(fā)送通知郵件。如果您想使用其他解決方案發(fā)送電子郵件,跳過此步驟并在安裝GitLab后配置外部SMTP服務(wù)器。
ps:配置外部SMTP服務(wù)器: https://docs.gitlab.com/omnibus/settings/smtp.html
sudo apt-get install -y postfix
在Postfix安裝期間,可能會(huì)出現(xiàn)一個(gè)配置屏幕。選擇 Internet Site 并按回車。使用您的服務(wù)器的外部DNS作為’郵件名’并按回車。如果出現(xiàn)其他屏幕,請(qǐng)繼續(xù)按回車鍵以接受默認(rèn)值。
1.2 添加GitLab軟件包存儲(chǔ)庫并安裝軟件包
添加GitLab軟件包存儲(chǔ)庫。
ps:gitlab-ce 是社區(qū)版,免費(fèi)的、gitlab-ee 是企業(yè)版,收費(fèi)的
gitlab-ee:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
gitlab-ce:
curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.deb.sh | sudo bash
接下來,安裝GitLab軟件包。將http:// gitlab.example.com更改為您想要訪問您的GitLab實(shí)例的URL。安裝將自動(dòng)在該URL處配置并啟動(dòng)GitLab。安裝后HTTPS需要額外的配置。
ps:額外的配置: https://docs.gitlab.com/omnibus/settings/nginx.html#enable-https
EXTERNAL_URL為要配置的URL
sudo EXTERNAL_URL="http://gitlab.example.com" apt-get install gitlab-ce
或者使用清華大學(xué)軟件鏡像站提供的軟件源來安裝 gitlab-ce
https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/
安裝成功
ps: 這里提示 在/etc/gitlab/gitlab.rb文件中,設(shè)置“external_url”為GitLab配置的URL, 所以接下來需要配置gitlab,并且.
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.
1.3 配置gitlab
在 /etc/gitlab/gitlab.rb 中設(shè)置 external_url
ps: 如果在上一步安裝 gitlab-ce 的時(shí)候配置了指定的 EXTERNAL_URL , 此步可以忽略
配置選項(xiàng): https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
修改:
external_url 'http://www.xxxxxxxxx.com/gitlab'
重新配置Gitlab以使更改生效
sudo gitlab-ctl reconfigure
重新啟動(dòng)服務(wù)
sudo gitlab-ctl restart
1.4 登錄gitlab
首次登錄會(huì)讓設(shè)置密碼,最少8位
ps: 用戶名為 root,同時(shí)也可以自己注冊(cè)
二、完全卸載Gitlab
# 停止gitlab
sudo gitlab-ctl stop
# 查看進(jìn)程
ps -e | grep gitlab
# 刪除所有包含gitlab的文件及目錄
find / -name gitlab | xargs rm -rf
# 卸載
sudo apt-get remove gitlab-ee
# 檢查還有沒有卸載的gitlab相關(guān)軟件
dpkg --get-selections | grep gitlab
gitlab-ee deinstall
# 再執(zhí)行
sudo apt-get --purge remove gitlab-ee
三、漢化Gitlab
使用xhang提供的漢化
https://gitlab.com/xhang/gitlab
# 查看gitlab版本
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
# 下載漢化包
wget方式(指定版本)
wget https://gitlab.com/xhang/gitlab/-/archive/10-8-stable-zh/gitlab-10-8-stable-zh.tar.bz2
或者
wget https://gitlab.com/xhang/gitlab/repository/10-8-stable-zh/archive.tar.bz2 -O gitlab-10-8-stable-zh.tar.bz2
# 解壓并查看
tar xf gitlab-10-8-stable-zh.tar.bz2
# 查看版本號(hào)
cat gitlab-10-8-stable-zh/VERSION
或者
cat gitlab/VERSION
# 備份gitlab
sudo cp -r /opt/gitlab/embedded/service/gitlab-rails/ /opt/gitlab/embedded/service/gitlab-rails-bak/
# 覆蓋
sudo cp -rf gitlab-10-8-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/
# 重起配置及重啟gitlab
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
四、修改配置默認(rèn)的gitlab相關(guān)端口
修改/etc/gitlab/gitlab.rb
sudo vim /etc/gitlab/gitlab.rb
#unicorn['port'] = 8080 修改 8070 默認(rèn)是注釋的去掉前面的#
unicorn['port'] = 8070
#nginx['listen_port'] = nil 修改 8090 默認(rèn)是注釋的去掉前面的#
nginx['listen_port'] = 8090
#################################################################
修改/var/opt/gitlab/gitlab-rails/etc/unicorn.rb
sudo vim /var/opt/gitlab/gitlab-rails/etc/unicorn.rb
#listen "127.0.0.1:8080", :tcp_nopush => true
listen "127.0.0.1:8070", :tcp_nopush => true
#################################################################
修改默認(rèn)的gitlab nginx的web服務(wù)80端 /var/opt/gitlab/nginx/conf/gitlab-http.conf
sudo vim /var/opt/gitlab/nginx/conf/gitlab-http.conf
#listen *:80;
listen *:8090;
#################################################################
重新配置gitlab
gitlab-ctl reconfigure
重新啟動(dòng)gitlab
gitlab-ctl restart
五、配置smtp郵件發(fā)送
$ sudo vim /etc/gitlab/gitlab.rb
# Change the external_url to the address your users will type in their browser
external_url 'http://xxhost.com'
#Sending application email via SMTP
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "xxuser@163.com"
gitlab_rails['smtp_password'] = "xxpassword"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
##修改gitlab配置的發(fā)信人
gitlab_rails['gitlab_email_from'] = "xxuser@163.com"
user["git_user_email"] = "xxuser@163.com"