30分鐘閒置伺服器建站(gitlab為例)

gaojy發表於2020-08-16

前言

最近博主的阿里雲主機又到了續費的時候了,剛買雲主機的時候那是各種優惠各種打折,續費的時候只能當孫子了。

為了節省開支,又保證高效能的前提下,買了臺10代NUC,記憶體和ssd自選,搭建一臺個人伺服器。

30分鐘閒置伺服器建站(gitlab為例)

 

準備工作

1 安裝linux系統

建議安裝ubuntu,樓主安裝了centos8,需要配置網路才能使用。安裝系統的時候考慮到了伺服器用途,所以選擇了最小安裝,不包括GUI互動介面。具體安裝過程可以網上搜一下,不在這裡具體闡述。

 

2 域名的購買,認證,備案。

在阿里雲的【域名註冊】裡面可以選擇一個自己喜歡的域名,之後按照步驟認證,解析域名,域名備案。

 

3 公網雲主機

另外還需要一個公網IP,用來最為代理機器訪問內網個人伺服器,博主選擇了盤石雲,對於公網主機只需要大頻寬以及優惠的價格即可。

 

所有的準備工作已經就緒,現在開始搭建應用吧。

 

frp內網穿透

如何通過公網IP代理到內網伺服器呢,使用FRP內網穿透技術。

在雲主機和內網主機都需要下載frp包,樓主用的是0.33版本。下載,解壓。

在搭建frp之前,博主想在雲主機上搭建Nginx,反向代理frp服務,但之後可能涉及到了跨域的問題,為了簡化代理流程,直接使用frp的custom_domains配置域名解析。

 

1 雲主機作為frp的服務端,需要配置frps.ini檔案

[common]
bind_port = 9999  #作為frp連線的埠號,客戶端需要使用該埠維持frp連線
vhost_http_port = 80     #http服務預設使用80埠
vhost_https_port = 443  #https服務預設使用443埠
  
[gitlab]
type = http   # port 80    #指定gitlab服務

 啟動frp服務端    nohup ./frps -c ./frps.ini &

 

 

2 內網主機主機作為客戶端,配置frpc.ini檔案

[common]
server_addr = 110.43.140.172  #遠端伺服器ip地址
server_port = 9999  #frp埠

[gitlab]
type = http
local_ip = 127.0.0.1
local_port = 8099   #本機gitlab開放埠
custom_domains = code.gaojy.cc 

啟動frp客戶端    nohup ./frpc -c ./frpc.ini &

 

 

管理皮膚

下載寶塔皮膚     https://www.bt.cn/ ,根據指南安裝即可。安裝完以後配置frp埠:

frps.ini

[baota]]
type = http   # port 80

frpc.ini

[baota]
type = http
local_ip = 127.0.0.1
local_port = 8888
custom_domains = system.gaojy.cc

重啟frp,效果如圖,用來管理你的主機,監控及建立一些定任務等.

 

 

gitlab伺服器搭建

 繼續皮膚的【軟體商店】下載gitlab應用,點選安裝。安裝成功以後可看到執行狀態,以及內部埠。

 

 

 同樣需要配置frp gitlab的埠,在上面的示例中已經展示。完成之後,來簡單測試一下吧 http://code.gaojy.cc

 

以為這麼快就結束了?天真了,剛安裝完,clone的地址預設是內網ip和埠的地址,這個地址是無法被訪問的。

 

變更gitlab的訪問和clone地址

1 找到gitlab.rb檔案 預設位置  /etc/gitlab/gitlab.rb   修改external_url

#external_url 'http://192.168.0.97:8099'   替換成域名 =>
external_url 'http://code.gaojy.cc:8099'

 

2  重新設定引數 並重啟

# gitlab-ctl reconfigure

# gitlab-ctl restart

 

或者手動修改gitlab.yml    /var/opt/gitlab/gitlab-rails/etc/gitlab.yml

 

 

3 檢視效果

發現ssh和http的clone地址已經變更。

 

 

總結

最後,因為博主居住證的問題暫時還沒有通過工信部備案,會偶發攔截,重新整理幾次就好。後續將會結合drone,jfrog搭建devops編譯釋出流程,也歡迎大家把自己的程式碼託管進來。

另外內網伺服器的記憶體還是小了點,後續將會升級。

相關文章