導航:首頁 > 配伺服器 > git建倉時如何選擇本地伺服器

git建倉時如何選擇本地伺服器

發布時間:2025-07-02 05:47:50

❶ 手把手教你在 CentOS8 搭建 Gitlab 伺服器

寫在前面的話

很多 IT 人從業 多年也許都還沒有親自搭過一次 Gitlab 伺服器,我就是其中之一!通常都是入職後,拿到上面給的 Git 地址把項目 clone 下來!然後日復一日的 crud 搬磚,直到離職。也許用了幾百年 Git 了,但是從來沒有親自部署過 Gitlab 伺服器!雖然現在社會分工越來越細,部署 Gitlab 伺服器通常都是運維的兄弟去做了,但如果你去一家創業公司,很可能就要你來部署的!所以該走的路我們還是得走一下!

現在來正式從 「零」 開始搭建 Gitlab 伺服器: 首先來看看Gitlab 和 Github 的區別,一句話來概括就是:

Gitlab 是給企業私有化部署的 Git 伺服器; Github 是互聯網在線版的 Git 伺服器!

Github 對於開源項目建倉是免費使用的,那麼 Gitlab 收不收費呢?分布式版本控制方面的功能 Gitlab 也是免費使用的,提供了社區版 (Gitlab CE) 給大家!Gitlab 現在可強大了,已經有自己成套的 DevOps 落地解決方案 (提高生產力的利器),但是這部分功能是在收費的旗艦版 / 企業版 (Gitlab EE) 上提供的!就像 Github 建私有化倉庫的功能也是收費的一樣,很正常!

不啰嗦了,快速開始吧:進入官網如下圖,按箭頭依次點擊:官方建議使用至少 4GB 的可用內存來運行 Gitlab,我們選用伺服器時就要注意了,至少要 4GB 以上。點擊CentOS 8 一直往下滑

在安裝步驟的最後,有一個短短的鏈接,寫著 "CE or EE",似乎有個 CE 版的入口,點進去如下圖:新頁面前面的好幾段依然在講使用旗艦版 (企業版 Gitlab EE) 有多少好處.... 直到最後才放了一個免費社區版 (Gitlab CE) 的鏈接 「Install GitLab Community Edition」,藏得這么深,這是怕別人知道啊!續繼點進去:繼續點:伺服器准備好後,按著官方 Gitlab CE 版的安裝說明進行安裝即可,其實很簡單,認真算起來只有三步 (由於我是 root 身份,所以不用 sudo):

第一步

安裝和啟用 policycoreutils、openssh-server 和 openssh-clients 組件,並將它們開放防火牆 (不要忘了 reload 防火牆):

dnf install -y curl policycoreutils openssh-server openssh-clients# Enable OpenSSH server daemon if not enabled: sudo systemctl status sshdsystemctl enable sshdsystemctl start sshd# Check if opening the firewall is needed with: sudo systemctl status firewalld firewall-cmd --permanent --add-service=http firewall-cmd --permanent --add-service=https systemctl reload firewal

與郵件通知相關的 Postfix 組件其實可以暫時不用安裝和配置,這個可以放到後面再來配置一個外部的 SMTP 伺服器:

dnf install postfix systemctl enable postfix systemctl start postfix第二步

使用 curl 工具下載並配置 Gitlab CE 版 RPM 安裝包的倉庫配置腳本 (請確認你的伺服器網路通暢,注意這只是 RPM 安裝包的倉庫配置腳本,並不是真正的安裝包)

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

安裝 Gitlab CE 版並指定外部訪問的 URL 地址,這里注意一下:外部訪問 URL 地址使用一個自定義的域名,即使該域名實際上沒有也沒關系!另外如果你的伺服器沒有 https 相關的證書,那就不要用 https,直接用 http 協議!客戶端使用時你可以在 HOST 里做一下映射的,當然,有真實可以的域名就最好了!為什麼要用域名來指定外部訪問 URL 地址呢?因為後面你使用 Gitlab 時會發現這是一個明智的選擇!

EXTERNAL_URL="https://gitlab.example.com" dnf install -y gitlab-ce

到這里你會發現要從第二步中配置的國外站下載多達 700M 的 gitlab-ce 包是有多麼的艱難,預計耗時估計要 10 幾個鍾,如果沒有科學上網的話還是要採用別的方法!

蝸牛速度是無法忍受的,Ctrl+C 掐斷下載過程吧,換其它方法:

自己先從其他地方下載到 gitlab-ce 的 rmp 包,再上傳到伺服器進行安裝;

使用一個國內鏡像地址進行在線安裝;

這里我們講一下第二種辦法,使用國內鏡像地址進行在線安裝,這里我們選擇清華大學提供的鏡像伺服器,因為它提供了比較全面的使用說明 ( https://mirror.tuna.tsinghua.e.cn/help/gitlab-ce/),現在我們按說明來安裝一下 Gitlab CE 版 (以下步驟是從承接上面的第二步開始的):

新的第二步

使用 vi 或 vim 新建並編輯 yum 源配置文件 /etc/yum.repos.d/gitlab-ce.repo

# vim /etc/yum.repos.d/gitlab-ce.repo

填入以下 yum 源配置信息:

[gitlab-ce]name=Gitlab CE Repositorybaseurl=https://mirrors.tuna.tsinghua.e.cn/gitlab-ce/yum/el$releasever/gpgcheck=0enabled=1新的第三步

使用 yum 包管理器安裝 Gitlab CE 版

# yum makecache# yum -y install gitlab-ce

在 「新的第三步」 里比原來的第三步少了個東西,啥東西呢?細心的同學肯定發現了,沒有配置 Gitlab 伺服器的外部訪問地址 ( EXTERNAL_URL)!不要急,等待 Gitlab 裝完後我們再去配一下就好了!國內鏡像還是比較快的,幾分鍾就下載並裝好!

好了,現在該來補上 「新的第三步」 里缺失的 Gitlab 伺服器的外部訪問地址 (EXTERNAL_URL),在哪裡配置呢?熟悉 Linux 伺服器各目錄作的人應該都能猜到:Gitlab 這么全球通用的版本控制軟體,配置文件應該會也按照 Linux 約定放在 /etc 目錄中吧!使用 cd 到 /etc 目錄看一看或用 ls /etc/gitl 再 tab 一下就知道了!

# ls /etc/gitlab/gitlab.rb

果然是有一個 Gitlab 的配置文件!使用 cat 命令查看一下發現內容不是一般的多,眼睛都會看瞎!那麼我們用 grep 命令先過濾出包含外部訪問地址 (EXTERNAL_URL) 配置內容先:

# grep -i 'EXTERNAL_URL' /etc/gitlab/gitlab.rb ##! For more details on configuring external_url see:##! EXTERNAL_URL will be used to populate/replace this value.external_url 'http://gitlab.example.com'# registry_external_url 'https://registry.example.com'# pages_external_url "http://pages.example.com/"# gitlab_pages['artifacts_server_url'] = nil # Defaults to external_url + '/api/v4'# gitlab_pages['auth_redirect_uri'] = nil # Defaults to projects subdomain of pages_external_url and + '/auth'# gitlab_pages['gitlab_server'] = nil # Defaults to external_url# mattermost_external_url 'http://mattermost.example.com'# When the registry is automatically enabled using the same domain as `external_url`,# For example, if external_url is the same for two secondaries, you must specify# If it is blank, it defaults to external_url.

現在確認與外部訪問地址 (EXTERNAL_URL) 相關的內容就這么多,動手前先用 cp 命令備份一下 /etc/gitlab/gitlab.rb 文件,因為後面我們要做字元串直接替換這種高險操作!有備無患!

# cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak# ls /etc/gitlab/gitlab.rbgitlab.rb.bak

現在使用 sed 命令替換 /etc/gitlab/gitlab.rb 文件中的 http://gitlab.example.com 為 http://gitlab.xxxxx.com ? ,xxxxx為你的域名。

sed 命令字元串替換格式: sed -i "s$ 要查找的欄位 $ 替換成的欄位 & g" 文件名 ,-i 表示是 in place edit 的意思,即就地編輯更改;參數里開頭的 s 是 search 的意思,可以換成 d 表示 delete,最後的 g 是 globa 的意思,即全文搜索;

dnf install postfix systemctl enable postfix systemctl start postfix0

完了後,我們再用 grep 命令先篩選一下與外部訪問地址 (EXTERNAL_URL) 相關的內容:

dnf install postfix systemctl enable postfix systemctl start postfix1

使用 gitlab-ctl 工具根據修改後的配置文件重新配置 gitlab 服務實例使配置生效:

dnf install postfix systemctl enable postfix systemctl start postfix2還有其他一些常用命令如下

查看狀態:

dnf install postfix systemctl enable postfix systemctl start postfix3

啟動服務:

dnf install postfix systemctl enable postfix systemctl start postfix4

重啟服務:

dnf install postfix systemctl enable postfix systemctl start postfix5

停止服務:

dnf install postfix systemctl enable postfix systemctl start postfix6

列出所有服務:

dnf install postfix systemctl enable postfix systemctl start postfix7

最後從虛擬機的宿主機瀏覽器上用 IP 地址或域名 (用域名的話需要先在宿主機的 /etc/hosts 配置域名與 IP 地址映射,所以實際上還是 IP) 訪問一下 gitlab 服務:訪問成功如下圖 ,密碼在 /etc/gitlab/initial_root_password 文件中,登陸後可修改:

附加

語言改成中文: 進入 Preference,翻到最後,找到 Language,設置簡體中文並保存。

原文:https://juejin.cn/post/7099630956088131598
閱讀全文

與git建倉時如何選擇本地伺服器相關的資料

熱點內容
為什麼開不了允許app跟蹤 瀏覽:225
qq群中如何將文件移至文件夾 瀏覽:108
java下載文件的文件名 瀏覽:460
神奇寶貝我的世界電腦版伺服器地址 瀏覽:4
shellls命令 瀏覽:762
軍用壓縮餅干怎麼吃 瀏覽:939
人道pdf 瀏覽:610
分類視覺演算法 瀏覽:257
android彈出鍵盤位置 瀏覽:451
安卓怎麼下載愛思助 瀏覽:985
安卓機的呼叫怎麼開啟 瀏覽:355
騰訊伺服器硬碟什麼價 瀏覽:841
交換機關閉所有埠命令 瀏覽:91
程序員可以開網店嗎 瀏覽:115
演算法工程師面試經驗 瀏覽:686
有什麼好用的陪聊app 瀏覽:698
什麼是備中心伺服器 瀏覽:144
linux配置本地yum源 瀏覽:539
半導體器件與工藝pdf 瀏覽:528
超大文件解壓太慢 瀏覽:861