?
目錄
前言 1
一、Flexus 云服務(wù)器 X 介紹 1
1.1 Flexus 云服務(wù)器 X 實(shí)例簡(jiǎn)介 1
1.2 Flexus 云服務(wù)器 X 實(shí)例特點(diǎn) 2
1.3 Flexus 云服務(wù)器 X 實(shí)例使用場(chǎng)景 2
二、Flexus 云服務(wù)器 X 購(gòu)買(mǎi) 2
2.1 Flexus X 實(shí)例購(gòu)買(mǎi) 2
2.2重置密碼 3
2.3登錄服務(wù)器 4
三、Flexus X 實(shí)例安裝 GitLab5
3.1GitLab 鏡像下載 5
3.2GitLab 部署安裝 5
3.3 GitLab 配置 6
3.4 GitLab 登錄賬號(hào)重置 7
四、GitLab 驗(yàn)證 9
4.2 項(xiàng)目創(chuàng)建 12
4.3 ssh 密鑰配置 14
4.4 倉(cāng)庫(kù)克隆 16
4.4 代碼提交 17
五、Flexus X 性能監(jiān)控 18
總結(jié) 19
1
前言
隨著云計(jì)算技術(shù)的快速發(fā)展,越來(lái)越多的人選擇將個(gè)人或團(tuán)隊(duì)的代碼倉(cāng)庫(kù)搭建在云端,以便更好地管理和協(xié)作。華為云 FlexusX 實(shí)例憑借其高性能和穩(wěn)定性,成為了搭建 GitLab 平臺(tái)的理想選擇。本文將詳細(xì)介紹如何在 FlexusX 實(shí)例上快速搭建并配置 GitLab 平臺(tái)。
一、Flexus 云服務(wù)器 X 介紹
1.1Flexus 云服務(wù)器 X 實(shí)例簡(jiǎn)介
Flexus 云服務(wù)器 X 是華為云推出的一款高性能、高可用性的云服務(wù)器,它采用了最新的處理器技術(shù),支持多種操作系統(tǒng)和應(yīng)用程序,具備靈活的資源配置和強(qiáng)大的擴(kuò)展能力。無(wú)論是 Web 應(yīng)用、數(shù)據(jù)庫(kù)服務(wù)還是大數(shù)據(jù)處理,F(xiàn)lexus 云服務(wù)器 X 都能為您提供穩(wěn)定、高效的運(yùn)行環(huán)境。
1.2Flexus 云服務(wù)器 X 實(shí)例特點(diǎn)
Flexus 云服務(wù)器 X 實(shí)例具有如下四大特點(diǎn)
1.3Flexus 云服務(wù)器 X 實(shí)例使用場(chǎng)景
Flexus 云服務(wù)器 X 搭配更多云服務(wù),一站滿足多種場(chǎng)景需求:
企業(yè)建站:面向博客、論壇,和企業(yè)門(mén)戶等業(yè)務(wù)場(chǎng)景,幫助企業(yè)傳播價(jià)值信息,促進(jìn)信息共享和交流,支撐用戶建設(shè)多功能的傳播和交互平臺(tái)。
?????電商直播:基于 X 實(shí)例搭建電商交易平臺(tái),可以從容面對(duì)電商市場(chǎng)瞬息萬(wàn)變對(duì)的業(yè)務(wù)壓力變化。
個(gè)人開(kāi)發(fā)測(cè)試:開(kāi)發(fā)者在開(kāi)發(fā)、測(cè)試過(guò)程中需要的環(huán)境資源,可以選擇從云上提供。基于 X 實(shí)例搭建開(kāi)發(fā)測(cè)試環(huán)境,更加便利,成本更優(yōu)。
游戲服務(wù)器:適用于搭建游戲后臺(tái)服務(wù)器,強(qiáng)大算力輕松應(yīng)對(duì)千人同時(shí)在線,同時(shí)平滑擴(kuò)容可快速應(yīng)對(duì)服務(wù)器玩家數(shù)量上漲訴求,超強(qiáng)的網(wǎng)絡(luò)加速能力提升用戶體驗(yàn)
二、Flexus 云服務(wù)器 X 購(gòu)買(mǎi)
2.1FlexusX 實(shí)例購(gòu)買(mǎi)
本文實(shí)踐前,開(kāi)始前需要在華為云官網(wǎng)購(gòu)買(mǎi) Flexus X 實(shí)例,可以根據(jù)實(shí)際需求選擇合適的配置,如 CPU、內(nèi)存、存儲(chǔ)和網(wǎng)絡(luò)帶寬等。本次需要安裝 gitlab 平臺(tái),官方要求 CPU 建議使用 2 核或以上,內(nèi)存建議使用 4GB 或以上內(nèi)存,硬盤(pán)建議使用至少 50GB 的硬盤(pán)空間,可以根據(jù)此條件進(jìn)行選擇。
購(gòu)買(mǎi)成功后,再控制臺(tái),就可以看到剛剛購(gòu)買(mǎi)的 FlexusX 實(shí)例服務(wù)器,如下已購(gòu)買(mǎi) 4 核 12g 的實(shí)例。
2.2重置密碼
首次購(gòu)買(mǎi)后,需要重置服務(wù)器的登錄密碼,才能遠(yuǎn)程登錄到服務(wù)器中,在華為云控制臺(tái)中,找到 Flexus 云服務(wù)器 X 實(shí)例,點(diǎn)擊“重置密碼”按鈕,按照提示設(shè)置新的登錄密碼。
2.3登錄服務(wù)器
重置密碼之后,就可以使用剛剛的密碼登錄到 Flexus 云服務(wù)器 X 實(shí)例,可以使用 xShell 等 SSH 客戶端工具登錄服務(wù)器或者選擇使用自帶的 cloudshell。
接下來(lái)就可以登錄到 Flexus 云服務(wù)器 X 實(shí)例中,進(jìn)入終端之后,會(huì)提示W(wǎng)elcometoHuaweiCloudService,說(shuō)明成功登錄。
三、FlexusX實(shí)例安裝 GitLab
3.1GitLab 鏡像下載
本次將基于 Docker 容器進(jìn)行 GitLab 的部署。所以,確保 FlexusX 實(shí)例上已經(jīng)安裝了 Docker。關(guān)于 Docker 的安裝教程,可以參考下面文章中的 FlexusX 實(shí)例安裝 Docker 教程:828 華為云征文|基于華為云 Flexus X 實(shí)例快速搭建 Halo 博客平臺(tái)-CSDN 博客
接下來(lái),通過(guò)以下命令下載 GitLab 的官方 Docker 鏡像:
dockerpullgitlab/gitlab-ce
3.2GitLab 部署安裝
在開(kāi)始部署之前,需要?jiǎng)?chuàng)建一些必要的目錄來(lái)存儲(chǔ) GitLab 的配置文件、日志和數(shù)據(jù),主要用于 docker 容器映射。
mkdir-p/mydata/gitlab/config
mkdir-p/mydata/gitlab/logs
mkdir-p/mydata/gitlab/data
接下來(lái),使用 dockerrun 命令運(yùn)行 GitLab 容器,這里需要指定容器的一些運(yùn)行參數(shù),如主機(jī)名、端口映射、容器名稱、重啟策略以及數(shù)據(jù)卷映射等,本次運(yùn)行命令如下:
dockerrun
-p443:443
-p8081:80
-p8022:22
--namegitlab
--restartalways
-v/mydata/gitlab/config:/etc/gitlab
-v/mydata/gitlab/logs:/var/log/gitlab
-v/mydata/gitlab/data:/var/opt/gitlab
-dgitlab/gitlab-ce
443端口:用于安全的HTTPSWeb訪問(wèn)。
8081端口:用于普通的HTTPWeb訪問(wèn)(非加密),后續(xù)通過(guò)瀏覽器訪問(wèn)http://:8081來(lái)訪問(wèn)GitLab的Web界面。
8022端口:用于SSH連接,以便進(jìn)行遠(yuǎn)程管理和Git操作,后續(xù)克隆代碼使用。
docker 啟動(dòng)完成之后使用 dockerps 命令可以看到,gitlab 容器正常運(yùn)行。
3.3GitLab 配置
接下來(lái)進(jìn)行 GitLab 配置,包括外部訪問(wèn)以及賬號(hào)密碼,進(jìn)入 GitLab 的掛著配置文件目錄,并使用 vim 或其他文本編輯器修改 gitlab.rb 文件,執(zhí)行下面命令。
vim/mydata/gitlab/config/gitlab.rb
首先需要修改 external_url,它是GitLab配置文件中的一個(gè)重要設(shè)置項(xiàng),指定了GitLab實(shí)例對(duì)外提供服務(wù)的完整URL地址。找到#external_url'GENERATED_EXTERNAL_URL'去掉注釋,并修改為 FlexusX服務(wù)器的地址,主要 ip 就行,不需要端口號(hào),如圖所示:
接下來(lái),配置 SSH 訪問(wèn)的地址和端口,這里需要修改兩個(gè)地方,第一個(gè)是 ssh克隆地址,找到下面配置。
#gitlab_rails['gitlab_ssh_host']='ssh.host_example.com'
去除注釋,并且將 ssh.host_example.com 改為 FlexusX服務(wù)器 ip。
第二個(gè)是修改 ssh 克隆地址端口號(hào),找到下面配置。
gitlab_rails['gitlab_shell_ssh_port']=22
修改后面 22 為 8022,8022 也是 docker 啟動(dòng)容器映射的端口。
3.4GitLab 登錄賬號(hào)重置
GitLab 首次安裝需要重置密碼,web 管理后臺(tái)才能登錄,接下來(lái)需要進(jìn)入容器內(nèi)部設(shè)置 root 用戶的密碼。
首先,通過(guò)以下命令進(jìn)入 GitLab 容器的內(nèi)部環(huán)境:
dockerexec-itgitlab/bin/bash
進(jìn)入容器內(nèi)部后,需要進(jìn)一步進(jìn)入 GitLab 的 Rails 控制臺(tái)來(lái)進(jìn)行密碼重置操作。執(zhí)行以下命令:
gitlab-railsconsole-eproduction
啟動(dòng)了 GitLab 的 Rails 控制臺(tái),并且指定了運(yùn)行環(huán)境為 production,下面就是 GitLab 默認(rèn)的生產(chǎn)環(huán)境。
在 Rails 控制臺(tái)中,需要查詢到 id 為 1 的用戶,執(zhí)行下面命令:
user=User.where(id:1).first
id 為 1 通常是 GitLab 的超級(jí)管理員,查詢結(jié)果頁(yè)提示 root。
接下來(lái),修改這個(gè)超級(jí)管理員用戶的密碼。首先嘗試設(shè)置一個(gè)簡(jiǎn)單的密碼:
user.password='root@#'
確認(rèn)新密碼后,執(zhí)行以下命令來(lái)保存對(duì)用戶記錄的更改。
user.save!
GitLab 為了安全考慮,不允許設(shè)置過(guò)于簡(jiǎn)單的密碼。控制臺(tái)也收到保存錯(cuò)誤的提示,說(shuō)明密碼不符合安全要求。
所以重新設(shè)置為:qwertyu1234!
user.password='qwertyu1234!'
密碼設(shè)置成功,這條命令會(huì)返回 true,表示用戶的密碼已經(jīng)被成功更新。
完成密碼重置后,需要退出 Rails 控制臺(tái)和容器的 bashshell,執(zhí)行下面命令:
exit
執(zhí)行兩次 exit 命令,第一次退出 Rails 控制臺(tái),第二次退出容器的 bashshell。
四、GitLab 驗(yàn)證
上述準(zhǔn)備工作已就緒,接下來(lái)就可以進(jìn)行 GitLab 驗(yàn)證,首先確保 FlexusX 實(shí)例的安全組規(guī)則允許外部訪問(wèn) 8081 和 8022 端口,進(jìn)入安全組進(jìn)行添加。
添加完成之后,在瀏覽器中輸入 FlexusX 的 IP 地址和 8081 端口,可以成功打開(kāi) GitLab 登錄頁(yè)面。
接下來(lái),使用剛剛設(shè)置的 root 賬號(hào)和密碼登錄 GitLab,登錄成功進(jìn)入 GitLab 首頁(yè)。
GitLab 默認(rèn)是英文,可以在用戶設(shè)置的偏好設(shè)置中切換語(yǔ)言為中文,以便更好地操作 GitLab,如圖所示:
修改保存之后,刷新頁(yè)面,管理頁(yè)面也變成中文了。
4.2項(xiàng)目創(chuàng)建
在 GitLab 首頁(yè),點(diǎn)擊“創(chuàng)建項(xiàng)目”按鈕。
輸入項(xiàng)目名稱并創(chuàng)建一個(gè)空白項(xiàng)目,比如 Java-hello。
創(chuàng)建完成之后在首頁(yè)就可以看到剛剛創(chuàng)建的 Java-hello 項(xiàng)目了。
4.3ssh 密鑰配置
在克隆代碼之前,需要在本地生成 SSH 密鑰對(duì)。將公鑰復(fù)制到 GitLab 的 SSH 密鑰設(shè)置中,以便進(jìn)行安全的身份驗(yàn)證,打開(kāi) cmd 執(zhí)行下面命令:
ssh-keygen-trsa-C自己的郵箱 @.com
Git 的 SSH 密鑰通常存儲(chǔ)在 C:UsersYour-Username.ssh,其中 Your-Username 是你的 Windows 用戶名,記事本打開(kāi) id_rsa.pub,復(fù)制里面的公鑰。
回到 gitlab 在左邊菜單欄,點(diǎn)擊 ssh 秘鑰。
新增 SSH 秘鑰,將生成的秘鑰復(fù)制粘貼在密鑰框中。
4.4倉(cāng)庫(kù)克隆
ssh 秘鑰配置完成,就可以進(jìn)行倉(cāng)庫(kù)克隆了,進(jìn)入 GitLab 項(xiàng)目頁(yè)面,點(diǎn)擊“克隆”按鈕獲取倉(cāng)庫(kù)地址,使用 ssh 克隆。
在本地使用 GitBash 工具進(jìn)行倉(cāng)庫(kù)克隆,成功拉取倉(cāng)庫(kù)代碼。
在本地文件也看到對(duì)應(yīng)倉(cāng)庫(kù)目錄。
4.4代碼提交
在 GitLab 中創(chuàng)建項(xiàng)目并設(shè)置好 SSH 密鑰后,就可以開(kāi)始進(jìn)行代碼的提交和推送。首先,打開(kāi)項(xiàng)目中的 readme.md 文件,并進(jìn)行一些簡(jiǎn)單的編輯。這可以是添加項(xiàng)目的描述、說(shuō)明或其他相關(guān)信息。
cdjava-hello/在項(xiàng)目目錄中,執(zhí)行以下命令來(lái)提交更改:
gitadd.
gitcommit-m'華為云征文'
提交完成后,需要將代碼推送到 GitLab 平臺(tái)。執(zhí)行以下命令:
gitpushoriginmaster
推送完成后,可以登錄到 GitLab 平臺(tái),進(jìn)入項(xiàng)目頁(yè)面,查看提交歷史和最新的代碼更改。
五、FlexusX 性能監(jiān)控
在成功安裝并運(yùn)行 GitLab 平臺(tái)后,了解服務(wù)器的性能狀況是非常重要的,特別是考慮到 GitLab 本身會(huì)消耗相當(dāng)數(shù)量的服務(wù)器資源和性能。FlexusX 提供了強(qiáng)大的性能監(jiān)控功能,可以實(shí)時(shí)了解服務(wù)器的運(yùn)行狀態(tài),在 FlexusX 性能監(jiān)控面板可以看到,整體指標(biāo)平穩(wěn)正常。
總結(jié)
本文詳細(xì)介紹了如何在華為云 FlexusX 實(shí)例上搭建 GitLab 平臺(tái),并進(jìn)行了基本的配置和使用。通過(guò)遵循這些步驟,便可以輕松地將 GitLab 部署到您的服務(wù)器上,實(shí)現(xiàn)高效的代碼管理和團(tuán)隊(duì)協(xié)作。FlexusX 實(shí)例憑借其高性能和穩(wěn)定性,為 GitLab 平臺(tái)的順暢運(yùn)行提供了有力保障。無(wú)論您是個(gè)人開(kāi)發(fā)者還是團(tuán)隊(duì)成員,都能夠在這個(gè)平臺(tái)上享受到便捷的代碼托管、項(xiàng)目管理以及持續(xù)集成/持續(xù)部署等功能。
審核編輯 黃宇
-
云計(jì)算
+關(guān)注
關(guān)注
39文章
7966瀏覽量
139282 -
華為云
+關(guān)注
關(guān)注
3文章
2761瀏覽量
18094
發(fā)布評(píng)論請(qǐng)先 登錄
華為云 Flexus 云服務(wù)器 X 實(shí)例之 openEuler 系統(tǒng)下搭建 MaxKB 開(kāi)源知識(shí)庫(kù)問(wèn)答系統(tǒng)

華為云 Flexus X 實(shí)例評(píng)測(cè)使用體驗(yàn)——安裝部署 discuzQ 小程序博客論壇

華為云 Flexus X 實(shí)例 docker 部署最新 Appsmith 社區(qū)版,搭建自己的低代碼平臺(tái)

華為云 Flexus X 實(shí)例下的場(chǎng)景體驗(yàn)——小企業(yè)必備——禪道服務(wù)搭建

云端代碼管理新體驗(yàn),華為云 Flexus X 實(shí)例上 GitLab 部署與使用的實(shí)戰(zhàn)指南云端代碼管理新體驗(yàn)

云服務(wù)器 Flexus X 實(shí)例:部署 Gitea,擁有自己的 Git 倉(cāng)庫(kù),管理本地代碼

華為云 Flexus X 實(shí)例部署安裝 Jupyter Notebook,學(xué)習(xí) AI,機(jī)器學(xué)習(xí)算法

華為云 Flexus 云服務(wù)器 X 實(shí)例之 Docker 環(huán)境下部署 JmalCloud 個(gè)人網(wǎng)盤(pán)

華為云 Flexus X 實(shí)例 docker 部署最新 gitlab 社區(qū)版,搭建自己的私人代碼倉(cāng)庫(kù)

華為云 Flexus 云服務(wù)器 X 實(shí)例的使用教程

Flexus 云服務(wù)器 X 實(shí)例:在 Docker 環(huán)境下搭建 java 開(kāi)發(fā)環(huán)境

基于華為云 Flexus 云服務(wù)器 X 實(shí)例部搭建 Halo 博客平臺(tái)

基于華為云 Flexus 云服務(wù)器 X 實(shí)例搭建 Linux 學(xué)習(xí)環(huán)境

評(píng)論