日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Gitlab部署和汉化以及简单运维

發(fā)布時(shí)間:2025/7/25 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Gitlab部署和汉化以及简单运维 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Gitlab部署和漢化以及簡(jiǎn)單運(yùn)維

時(shí)間?2016-04-14 01:03:43 Xuanwo's Blog 原文? https://xuanwo.org/2016/04/13/gitlab-install-intro/ 主題 GitLab 運(yùn)維技術(shù)

在跟網(wǎng)絡(luò)中心的老師溝通成立鏡像站的相關(guān)事宜的時(shí)候,意外地接下來(lái)搭建一套校內(nèi)的 Git 服務(wù)的任務(wù)。

@怡紅公子曾經(jīng)搭建過(guò)一套類似的服務(wù),但由于服務(wù)器端沒(méi)有開(kāi)啟 VT 虛擬化導(dǎo)致不能安裝 64 位的操作系統(tǒng),再加上 Gitlab 不提供 32 位的安裝包,所以長(zhǎng)期以來(lái)怡紅公子一直都是自行編譯并配置 Gitlab 。考慮到后續(xù)維護(hù)的方便,我們決定趁著這個(gè)機(jī)會(huì)使用另一臺(tái)支持安裝 64 位操作系統(tǒng)的服務(wù)器,一勞永逸地解決這個(gè)問(wèn)題。

我們的服務(wù)器環(huán)境是 CentOS 7.2 64bit,以下所有操作均以此為基準(zhǔn)。

Gitlab 安裝

推薦使用 Install a GitLab CE Omnibus package安裝 ,其他發(fā)行版可以點(diǎn)選對(duì)應(yīng)版本,不再贅述。

安裝和配置依賴

如果需要安裝 Postfix 來(lái)發(fā)送郵件,則需要在安裝過(guò)程中選擇 Internet Site。你也可以使用 Sendmail 之類的第三方發(fā)信服務(wù)或者使用自行配制的 SMTP 服務(wù)器。

除此以外,下列命令將會(huì)在防火墻中打開(kāi) HTTP(80) 和 SSH(22) 對(duì)應(yīng)端口。

sudo yum install curl policycoreutils openssh-server openssh-clients sudo systemctl enable sshd sudo systemctl start sshd sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix sudo firewall-cmd --permanent --add-service=http sudo systemctl reload firewalld

添加 Gitlab 源并安裝

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash sudo yum install gitlab-ce

這個(gè)腳本會(huì)在源中添加 Gitlab-CE ,并自動(dòng)執(zhí)行 yum makecache,然后安裝 gitlab-ce。由于源在國(guó)外,可能速度較慢,也可以手動(dòng)添加來(lái)自 清華tuna 的源: https://mirrors.tuna.tsinghua.edu.cn/help/gitlab-ce/, 鏈接中為各發(fā)行版下的教程,感謝 清華tuna 提供鏡像。

配置并啟動(dòng) Gitlab

此時(shí)已經(jīng)可以啟動(dòng)服務(wù)了:

sudo gitlab-ctl reconfigure

進(jìn)行一長(zhǎng)串復(fù)雜的啟動(dòng)流程之后, gitlab 就已經(jīng)可以通過(guò) localhost進(jìn)行訪問(wèn)了。

Gitlab 配置

修改域名

默認(rèn)的配置文件保存在 /etc/gitlab/gitlab.rb,執(zhí)行:

sudo vim /etc/gitlab/gitlab.rb

打開(kāi)文件,并修改:

external_url 'http://your.domain'

再次執(zhí)行

sudo gitlab-ctl reconfigure

即可。

有一定概率出現(xiàn) 502 錯(cuò)誤,刷新瀏覽器或者再次更新配置即可。

Gitlab 漢化

由于服務(wù)對(duì)象是廣大師生,為了降低新手上手的難度,所有進(jìn)行漢化也是非常有必要的。好在國(guó)內(nèi)有人已經(jīng)進(jìn)行了這方面的工作,我們只需要共享其成果即可(歡迎向 原項(xiàng)目提交高質(zhì)量翻譯)。

首先確認(rèn)版本:

sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

并確認(rèn)當(dāng)前漢化版本的 VERSION 是否相同,當(dāng)前最新的漢化版本為 8.6 。

如果安裝版本小于當(dāng)前漢化版本,請(qǐng)先升級(jí)。如果安裝版本大于當(dāng)前漢化版本,請(qǐng)?jiān)诒卷?xiàng)目中提交新的 issue。

如果版本相同,首先在本地 clone 倉(cāng)庫(kù)。

# GitLab.com 倉(cāng)庫(kù) git clone https://gitlab.com/larryli/gitlab.git# 或 Coding.net 鏡像 git clone https://git.coding.net/larryli/gitlab.git

根據(jù)我的測(cè)試, Coding.net 的鏡像不完整,clone 之后無(wú)法 checkout

然后比較漢化分支和原分支,導(dǎo)出 patch 用的 diff 文件。

# 8.1 版本的漢化補(bǔ)丁 git diff origin/8-6-stable..8-6-zh > ../8.6.diff

然后上傳 8.6.diff文件到服務(wù)器。

# 停止 gitlab sudo gitlab-ctl stop sudo patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 8.6.diff

確定沒(méi)有 .rej 文件,重啟 GitLab 即可。

sudo gitlab-ctl start

如果漢化中出現(xiàn)問(wèn)題,請(qǐng)重新安裝 GitLab( 注意備份數(shù)據(jù))。

Gitlab 運(yùn)維

管理

# 啟動(dòng)所有 gitlab 組件: sudo gitlab-ctl start# 停止所有 gitlab 組件: sudo gitlab-ctl stop# 重啟所有 gitlab 組件: sudo gitlab-ctl restart

備份

備份GitLab repositories and GitLab metadata

在 crontab 中加入如下命令:

0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create

恢復(fù)

首先進(jìn)入備份 gitlab 的目錄,這個(gè)目錄是配置文件中的 gitlab_rails['backup_path'],默認(rèn)為 /var/opt/gitlab/backups。

然后停止 unicorn 和 sidekiq ,保證數(shù)據(jù)庫(kù)沒(méi)有新的連接,不會(huì)有寫(xiě)數(shù)據(jù)情況。

sudo gitlab-ctl stop unicorn # ok: down: unicorn: 0s, normally up sudo gitlab-ctl stop sidekiq # ok: down: sidekiq: 0s, normally up

然后恢復(fù)數(shù)據(jù),1406691018為備份文件的時(shí)間戳

gitlab-rake gitlab:backup:restore BACKUP=1406691018

總結(jié)

以上是生活随笔為你收集整理的Gitlab部署和汉化以及简单运维的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。