4 5 伺服器上的 Git Git 守護程序

2021-09-13 16:35:40 字數 1471 閱讀 9171

版本

作者日期

備註0.1

loon

2019.3.25

初稿接下來我們將通過 「git」 協議建立乙個基於守護程序的倉庫。 對於快速且無需授權的 git 資料訪問,這是乙個理想之選。 請注意,因為其不包含授權服務,任何通過該協議管理的內容將在其網路上公開。

如果執行在防火牆之外的伺服器上,它應該只對那些公開的唯讀專案服務。 如果執行在防火牆之內的伺服器上,它可用於支撐大量參與人員或自動系統(用於持續整合或編譯的主機)唯讀訪問的專案,這樣可以省去逐一配置 ssh 公鑰的麻煩。

無論何時,該 git 協議都是相對容易設定的。 通常,你只需要以守護程序的形式執行該命令:

git daemon --reuseaddr --base-path=/opt/git/ /opt/git/
–reuseaddr 允許伺服器在無需等待舊連線超時的情況下重啟,–base-path 選項允許使用者在未完全指定路徑的條件下轉殖專案,結尾的路徑將告訴 git 守護程序從何處尋找倉庫來匯出。 如果有防火牆正在執行,你需要開放埠 9418 的通訊許可權。

你可以通過許多方式將該程序以守護程序的方式執行,這主要取決於你所使用的作業系統。 在一台 ubuntu 機器上,你可以使用乙份 upstart 指令碼。 因此,找到如下檔案:

/etc/event.d/local-git-daemon
並新增下列指令碼內容:

start on startup

stop on shutdown

exec /usr/bin/git daemon \

--user=git --group=git \

--reuseaddr \

--base-path=/opt/git/ \

/opt/git/

respawn

出於安全考慮,強烈建議使用乙個對倉庫擁有唯讀許可權的使用者身份來執行該守護程序 - 你可以建立乙個新使用者 git-ro 並且以該使用者身份來執行守護程序。 為簡便起見,我們將像 git-shell 一樣,同樣使用 git 使用者來執行它。

當你重啟機器時,你的 git 守護程序將會自動啟動,並且如果程序被意外結束它會自動重新執行。 為了在不重啟的情況下直接執行,你可以執行以下命令:

initctl start local-git-daemon
在其他系統中,你可以使用 sysvinit 系統中的 xinetd 指令碼,或者另外的方式來實現 - 只要你能夠將其命令守護程序化並實現監控。

接下來,你需要告訴 git 哪些倉庫允許基於伺服器的無授權訪問。 你可以在每個倉庫下建立乙個名為 git-daemon-export-ok 的檔案來實現。

$ cd /path/to/project.git

$ touch git-daemon-export-ok

該檔案將允許 git 提供無需授權的專案訪問服務。

伺服器上的 Git 在伺服器上搭建 Git

現在我們將討論如何在你自己的伺服器上搭建 git 服務來執行這些協議。note 這裡我們將要演示在 linux 伺服器上進行一次基本且簡化的安裝所需的命令與步驟,當然在 mac 或 windows 伺服器上同樣可以執行這些服務。事實上,在你的計算機基礎架構中建立乙個生產環境伺服器,將不可避免的使用到...

伺服器上的 Git 在伺服器上搭建 Git

現在我們將討論如何在你自己的伺服器上搭建 git 服務來執行這些協議。note 這裡我們將要演示在 linux 伺服器上進行一次基本且簡化的安裝所需的命令與步驟,當然在 mac 或 windows 伺服器上同樣可以執行這些服務。事實上,在你的計算機基礎架構中建立乙個生產環境伺服器,將不可避免的使用到...

伺服器上架

一 伺服器上架所需部件 在隨機的導軌套件中包含以下物品 1 外軌 含內滑軌和外滑軌 2 根 2 內軌 2 根 3 導軌支架 4 片 4 固定用螺栓 16 個 5 固定用螺母 8 個 請您準備好12 套固定導軌支架用的螺栓和螺母 機櫃附帶 二 準備滑軌 滑軌由兩部分組成 外軌和內軌。其中外軌是一體設計...