在 Linux 掛載 Google Cloud Storage — NetDrive CI 流水線方案
在 Ubuntu 上用 NetDrive 將 Google Cloud Storage 儲存桶掛載為本機路徑,為 Linux 上的 CI 執行器與建置代理設定 GCS 存取。
在 Ubuntu 上執行的建置代理需要讀取儲存在 Google Cloud Storage 儲存桶中的預建容器層與參考資料集,而目前的流水線步驟是先跑 gsutil cp 再等待。每個工作在實際測試套件開始前都要先下載數 GB 的資料,而其中一半的測試資料在多次執行間根本不會變。將該 GCS 儲存桶掛載為執行器上的一個路徑,就能省去複製這一步:流水線直接從儲存桶讀取,就像讀取磁碟上的任何其他目錄一樣。

在 Ubuntu 掛載 GCS — 省去下載步驟
NetDrive 讓 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 與 macOS 上顯示為原生磁碟機 — 不需同步,也不需完整下載。
- 將儲存桶物件當作一般檔案路徑讀取,不需修改任何客戶端函式庫
- 可在 CI 執行器已在使用的相同 Ubuntu 16.04+ 版本上運作
- 自動掛載可在工作開始前就備妥路徑
免費試用。提供終身與訂閱方案。
GCS 支援,以及 Linux 上「實驗性」代表什麼
NetDrive 自最早期的版本起就支援 Google Cloud Storage,包括 3.15.450 版新增的 MIME 類型處理。這部分在 Windows、macOS 與 Linux 上是完全一致的——相同的 GCS 連線邏輯、相同的儲存桶瀏覽方式。
Linux 版本本身則是另一回事。NetDrive 的 Linux 發行版本發布於 github.com/NetDrive/installer,標示為實驗性,而非穩定的正式發行版本。它可在 Ubuntu 16.04 及更新版本上執行。這個區別在 CI 使用情境中很重要:將 Linux 執行器上的 GCS 掛載視為適合用於建置代理、預備環境工作與內部工具——而不是面向客戶的正式服務儲存層。如果你的團隊需要穩定、完整支援的體驗,建議使用 Windows 或 macOS 環境。

將儲存桶設定為掛載點
從 GitHub 發行版本安裝適用於你 Ubuntu 版本的 NetDrive 後,新增 GCS 儲存桶的流程與其他任何供應商相同:
- 開啟 NetDrive → 點擊 + Add Drive,然後從供應商清單中選擇 Google Cloud Storage。
- 使用擁有(或具有讀寫權限的)目標專案與儲存桶的 Google 帳號登入。
- 選擇要掛載的儲存桶,然後指定掛載點——像
/mnt/gcs-fixtures這樣的目錄路徑,而非 Windows 磁碟機代號。 - 選擇該磁碟機是否在開機時自動掛載,這一點對於可能在工作之間重新開機、且沒有人登入點擊任何東西的 CI 執行器來說相當重要。
掛載完成後,該儲存桶就會像一般目錄一樣出現在檔案系統中。指向 /mnt/gcs-fixtures/snapshots/ 的測試執行器不需要知道、也不需要在意這些檔案其實位於 Cloud Storage 中。

在工作依賴掛載之前先驗證
一個假設掛載已成功、卻在測試執行到一半才失敗的 CI 工作,比在設定階段就失敗的工作更糟。在流水線繼續之前先檢查掛載狀態——對掛載點執行簡單的 ls,或用 NetDrive 的 nd3cmd 命令列工具進行檢查,就能在下游任何動作使用該儲存桶之前,確認它確實已連接且可讀取。

如果掛載結果是空的,或工作卡在等待掛載完成,請重新執行 Add Drive 步驟並重新檢查憑證——這個階段的大多數失敗,追根究底都是 Google 帳號權杖過期或被撤銷,而不是儲存桶本身有問題。
總結
對於在 Ubuntu 上執行的建置代理與內部工具而言,用 NetDrive 掛載 GCS 儲存桶能將物件儲存變成一般路徑,省去大多數 CI 設定預設採用的「先下載再執行」模式。如果你的流水線改讀取 Amazon S3,在 Linux 上用 NetDrive 掛載 Amazon S3 說明了對應的設定方式,而 在 Ubuntu Linux 上使用 NetDrive 則涵蓋了無論連接哪種供應商都適用的安裝細節。已經用 S3 測試資料這樣做的團隊,也可能會覺得 面向 CI 團隊的 S3 測試資料 對這種更廣泛的模式很有幫助。
— Kai, NetDrive