Nubbo 透過 Spaces 存取金鑰和你儲存桶所在的區域連接 DigitalOcean Spaces。只要幾分鐘,它們就會出現在檔案總管中,支援直接上傳、分享連結和相簿。這份指南會逐步帶你走過 Nubbo 連線精靈的兩種方式:自動,或使用僅限一個儲存桶的金鑰。
你會得到什麼
- 像使用雲端硬碟一樣瀏覽儲存桶:資料夾、檢視方式、搜尋、垃圾桶、標籤和最愛。
- 檔案直接在你的瀏覽器和 DigitalOcean Spaces 之間上傳和下載。檔案從不經過 Nubbo 的伺服器。
- 以密碼、到期日和下載次數限制分享檔案和資料夾,把檔案接收到你的儲存桶,還能建立相簿。
- 你的金鑰以 AES-256-GCM 加密儲存,你可以隨時中斷儲存桶的連線。
開始之前
你需要一個 DigitalOcean Spaces 帳戶和一個 Nubbo 帳戶。你連接的每個儲存桶都計入你的方案上限:免費方案可連接 2 個,Personal 5 個,Pro 則不限。Spaces 提供 13 個區域:nyc3、ams3、sfo2、sfo3、sgp1、lon1、fra1、tor1、blr1、syd1、atl1、ric1 和 mkc1。Nubbo 會詢問區域,因為每個區域都有自己的端點。
選擇連線方式
Nubbo 連線精靈提供兩種方式。兩者的結果相同:儲存桶完成連線,可以從瀏覽器上傳檔案。
| 自動 | 使用受限金鑰 | |
|---|---|---|
| 金鑰 | 可存取整個帳戶 | 僅限一個儲存桶 |
| 儲存桶 | Nubbo 使用你現有的,或新建一個 | 你要先自行建立 |
| CORS | Nubbo 為你新增規則 | 你自行新增規則 |
| 何時選擇 | 最快的方式 | 不想授予整個帳戶的存取權時 |
自動連線
步驟 1:在 DigitalOcean Spaces 建立金鑰
- 在 DigitalOcean 控制台中開啟 Spaces Object Storage,前往 Access Keys 分頁。
- 按下 Create Access Key,選擇 Full access,並取個名稱,例如
nubbo。 - 複製存取金鑰和私密金鑰。DigitalOcean 只會顯示私密金鑰一次。
步驟 2:在 Nubbo 連接儲存桶
在 Nubbo 中開啟 儲存桶,按下 連接儲存桶。選擇 DigitalOcean Spaces,然後按下 繼續。

選擇 自動,然後按下 繼續。

在 你的金鑰 步驟中貼上存取金鑰和私密金鑰,並選擇你儲存桶所在的區域。按下 檢查金鑰。Nubbo 會確認金鑰可用,且能存取整個帳戶。

選擇你的其中一個儲存桶並按下 使用這個儲存桶,或選擇 新建,輸入名稱(如果有要求,再選擇區域),然後按下 建立並準備。Nubbo 會在儲存桶中新增一條 CORS 規則,只允許從應用程式上傳和下載,並保留原有的規則。

檢查三項確認結果,視需要變更 在 Nubbo 中的名稱,然後按下 完成。儲存桶會出現在 儲存桶 頁面中,你可以在檔案總管中開啟它。

如果 Nubbo 無法用你的金鑰新增 CORS 規則,連線精靈會帶你到 CORS 步驟。接著請依照 新增 CORS 規則 操作。
使用受限金鑰連線
步驟 1:在 DigitalOcean Spaces 準備儲存桶和金鑰
- 在 Spaces Object Storage 中按下 Create Bucket,選擇區域和名稱,然後建立儲存桶。
- 在 Access Keys 中按下 Create Access Key,選擇 Limited access。
- 選擇你的儲存桶並給予 Read/Write/Delete 權限,為金鑰取個名稱,然後建立。
- 複製存取金鑰和私密金鑰。受限金鑰無法用於設有儲存桶政策(bucket policy)的儲存桶。
步驟 2:在 Nubbo 連接儲存桶
- 在 儲存桶 頁面中按下 連接儲存桶,選擇 DigitalOcean Spaces,再選擇 使用受限金鑰。
- 貼上存取金鑰和私密金鑰,並選擇區域。按下 檢查金鑰。
- 輸入儲存桶的確切名稱,然後按下 檢查存取權限。
- 連線精靈會進入 CORS 步驟,並顯示你需要新增的規則。
新增 CORS 規則
CORS 規則讓瀏覽器可以在 https://nubbo.app 上從你的儲存桶上傳和下載檔案。這和連線精靈在 CORS 步驟中顯示的規則相同。
- 在 Spaces Object Storage 中開啟儲存桶,前往 Settings。
- 在 CORS Configurations 下按下 Add。
- 用以下數值填寫表單,然後按下 Save CORS Configuration。
Origin: https://nubbo.app
Allowed Methods: GET, PUT, POST, DELETE, HEAD
Allowed Headers: *
Access Control Max Age: 3600
使用受限金鑰時,你必須自行新增:在 DigitalOcean 上,透過 API 變更 CORS 需要 Full access 金鑰。

儲存後回到 Nubbo,按下 已新增,檢查。部分服務供應商需要約一分鐘才能套用。如果你的金鑰有變更 CORS 的權限,嘗試幫我設定 會替你完成。
如果出了問題
| Nubbo 中的訊息 | 該怎麼做 |
|---|---|
| 「憑證無效。請檢查存取金鑰和私密存取金鑰。」 | 重新複製兩把金鑰,開頭和結尾不要有空格。 |
| 「這把金鑰似乎僅限一個儲存桶。你可以繼續使用受限方式,或建立一把具有完整存取權限的金鑰。」 | 按下繼續使用受限金鑰,或建立一把可存取整個帳戶的金鑰,然後按下換一把金鑰。 |
| 「找不到儲存桶。請確認名稱和區域。」 | 確認儲存桶的確切名稱,以及所選區域是否為儲存桶所在的區域。 |
| 「你的金鑰沒有建立儲存桶的權限。」 | 使用具有完整存取權限的金鑰,或在你的控制台建立儲存桶,然後按下我已在控制台中建立。 |
| 「這個名稱在此服務供應商已被使用;請換一個。」 | 儲存桶名稱在整個服務供應商中是唯一的:請換一個。 |
| 「你的金鑰沒有設定它的權限。」 | 依照上方說明手動新增 CORS 規則。 |
| 「仍未生效。請檢查規則後再試一次;部分服務供應商需要約一分鐘才能套用。」 | 確認來源完全是 https://nubbo.app,結尾沒有斜線,等一分鐘後再檢查一次。 |
| 「此儲存桶已在使用中。」 | 這個儲存桶已經在 Nubbo 中連線,可能是在你的帳戶或其他帳戶中。 |
| 「儲存桶位於不同的區域。請確認設定的區域。」 | 在 Nubbo 中選擇你建立儲存桶時所用的同一個區域。 |
| 「拒絕存取。請確認憑證仍然有效及其權限。」 | 使用受限金鑰時,確認它對該儲存桶具有 Read/Write/Delete 權限,且儲存桶沒有設定儲存桶政策。 |
費用
Spaces 以月費計費,其中包含儲存空間和傳輸量。我們在 DigitalOcean Spaces 定價 中說明。
常見問題
我需要哪種 Spaces 金鑰?
自動方式需要具有 Full access 的金鑰。使用受限金鑰時,需要對你的儲存桶具有 Read/Write/Delete 權限的 Limited access 金鑰。
在 Nubbo 中要選擇哪個區域?
儲存桶所在的區域:nyc3、ams3、sfo2、sfo3、sgp1、lon1、fra1、tor1、blr1、syd1、atl1、ric1 或 mkc1。控制台會在儲存桶名稱旁顯示。
為什麼 Nubbo 無法用我的受限金鑰設定 CORS?
因為在 DigitalOcean 上,透過 API 變更 CORS 需要 Full access 金鑰。使用受限金鑰時,請自行在 Settings、CORS Configurations 中新增。
我可以連接來自多個區域的儲存桶嗎?
可以。每個儲存桶都以自己的區域連接,數量上限依你的方案而定。
資料來源
價格與限制取自以下官方頁面。服務供應商會調整這些內容,決定前請先確認。