Посібники

Файловий менеджер для DigitalOcean Spaces: підключіть його до Nubbo

Як підключити бакет DigitalOcean Spaces до Nubbo: ключ доступу, регіон, майстер крок за кроком, правило CORS і що робити в разі помилки.

Nubbo підключається до DigitalOcean Spaces за допомогою ключа доступу 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 запитує регіон, бо кожен має власний endpoint.

Виберіть спосіб підключення

Майстер Nubbo пропонує два шляхи. Обидва закінчуються однаково: бакет підключено й готово до завантажень із браузера.

АвтоматичноЗ обмеженим ключем
КлючДоступ до всього облікового записуОбмежений одним бакетом
БакетNubbo використає ваш або створить новийВи створюєте його заздалегідь
CORSNubbo додасть правило за васПравило додаєте ви
Коли вибиратиНайшвидший спосібКоли не хочете давати доступ до всього облікового запису

Автоматичне підключення

Крок 1: створіть ключ у DigitalOcean Spaces

  1. У панелі керування DigitalOcean відкрийте Spaces Object Storage і перейдіть на вкладку Access Keys.
  2. Натисніть Create Access Key, виберіть Full access і дайте ключу назву, наприклад nubbo.
  3. Скопіюйте ключ доступу й секрет. DigitalOcean показує секрет лише один раз.

Крок 2: підключіть бакет у Nubbo

  1. У Nubbo відкрийте Бакети й натисніть Підключити бакет. Виберіть DigitalOcean Spaces і натисніть Продовжити.

    Крок «Провайдер» майстра Nubbo з вибраним DigitalOcean Spaces Крок «Провайдер» майстра Nubbo з вибраним DigitalOcean Spaces
  2. Виберіть Автоматично й натисніть Продовжити.

    Крок «Спосіб підключення» з варіантами «Автоматично» та «З обмеженим ключем» Крок «Спосіб підключення» з варіантами «Автоматично» та «З обмеженим ключем»
  3. На кроці Ваш ключ вставте ключ доступу й секрет та виберіть регіон своїх бакетів. Натисніть Перевірити ключ. Nubbo перевірить, що ключ працює і має доступ до всього облікового запису.

    Крок «Ваш ключ» для DigitalOcean Spaces з коротким посібником і полями ключа Крок «Ваш ключ» для DigitalOcean Spaces з коротким посібником і полями ключа
  4. Виберіть один зі своїх бакетів і натисніть Використати цей bucket або виберіть Створити новий, введіть назву (і виберіть регіон, якщо майстер попросить) та натисніть Створити й підготувати. Nubbo додасть до бакета правило CORS, яке дозволяє завантаження лише із застосунку, і збереже правила, що вже є.

    Крок «Ваш bucket» зі списком бакетів і варіантом «Створити новий» Крок «Ваш bucket» зі списком бакетів і варіантом «Створити новий»
  5. Перегляньте три перевірки, за бажання змініть Назва в Nubbo і натисніть Завершити. Бакет з’явиться в розділі Бакети, і його можна відкрити в провіднику.

    Крок «Готово» з перевірками підключення, бакета та CORS Крок «Готово» з перевірками підключення, бакета та CORS

Якщо Nubbo не може додати правило CORS з вашим ключем, майстер переведе вас на крок CORS. Тоді виконайте розділ Додайте правило CORS.

Підключення з обмеженим ключем

Крок 1: підготуйте бакет і ключ у DigitalOcean Spaces

  1. У Spaces Object Storage натисніть Create Bucket, виберіть регіон і назву та створіть бакет.
  2. В Access Keys натисніть Create Access Key і виберіть Limited access.
  3. Виберіть свій бакет із дозволом Read/Write/Delete, дайте ключу назву й створіть його.
  4. Скопіюйте ключ доступу й секрет. Обмежені ключі не працюють із бакетами, які мають bucket policy.

Крок 2: підключіть бакет у Nubbo

  1. У розділі Бакети натисніть Підключити бакет, виберіть DigitalOcean Spaces, а потім З обмеженим ключем.
  2. Вставте ключ доступу й секрет та виберіть регіон. Натисніть Перевірити ключ.
  3. Введіть точну назву бакета й натисніть Перевірити доступ.
  4. Майстер перейде на крок CORS із правилом, яке треба додати.

Додайте правило CORS

Правило CORS дозволяє браузеру завантажувати файли у ваш бакет і з нього на https://nubbo.app. Це те саме правило, яке майстер показує на кроці CORS.

  1. У Spaces Object Storage відкрийте бакет і перейдіть у Settings.
  2. У розділі CORS Configurations натисніть Add.
  3. Заповніть форму цими значеннями й натисніть Save CORS Configuration.
Origin: https://nubbo.app
Allowed Methods: GET, PUT, POST, DELETE, HEAD
Allowed Headers: *
Access Control Max Age: 3600

З обмеженим ключем правило доведеться додати самостійно: у DigitalOcean зміна CORS через API вимагає ключа з Full access.

Крок CORS із правилом, яке треба додати до бакета Крок CORS із правилом, яке треба додати до бакета

Коли правило збережено, поверніться в Nubbo й натисніть Готово, перевірити. Деяким провайдерам потрібна хвилина, щоб його застосувати. Якщо ваш ключ має право змінювати CORS, кнопка Спробувати налаштувати за мене зробить це за вас.

Якщо щось пішло не так

Повідомлення в NubboЩо робити
«Недійсні облікові дані. Перевірте ключ доступу та секретний ключ доступу.»Скопіюйте обидва ключі ще раз, без пробілів на початку й у кінці.
«Схоже, цей ключ обмежений одним bucket. Можна продовжити обмеженим шляхом або створити ключ із повним доступом.»Натисніть «Продовжити з обмеженим ключем» або створіть ключ із доступом до всього облікового запису й натисніть «Спробувати інший ключ».
«Bucket не знайдено. Перевірте назву та регіон.»Перевірте точну назву бакета й те, що вибраний регіон збігається з регіоном бакета.
«Ваш ключ не має дозволу створювати bucket.»Використайте ключ із повним доступом або створіть бакет у своїй панелі й натисніть «Він уже створений у моїй панелі».
«Ця назва вже використовується в цього провайдера; спробуйте іншу.»Назви бакетів унікальні в межах провайдера: виберіть іншу.
«Ваш ключ не має дозволу на це налаштування.»Додайте правило CORS вручну, як описано вище.
«Ще не працює. Перегляньте правило й перевірте знову; деяким провайдерам потрібна хвилина, щоб його застосувати.»Переконайтеся, що джерело (origin) саме https://nubbo.app без скісної риски в кінці, зачекайте хвилину й перевірте знову.
«Цей bucket вже використовується.»Цей бакет уже підключено в Nubbo, у вашому чи в іншому обліковому записі.
«Bucket розташовано в іншому регіоні. Перевірте налаштований регіон.»Виберіть у Nubbo той самий регіон, у якому ви створили бакет.
«Доступ заборонено. Перевірте, чи облікові дані все ще активні, та їхні дозволи.»З обмеженим ключем переконайтеся, що він має Read/Write/Delete на цей бакет і що бакет не має bucket policy.

Скільки це коштує

Spaces оплачується щомісячною підпискою, яка включає зберігання й трафік. Ми пояснюємо це в статті Ціни DigitalOcean Spaces.

Поширені запитання

Який тип ключа Spaces мені потрібен?

Для автоматичного шляху потрібен ключ із Full access. З обмеженим ключем потрібен ключ Limited access із дозволом Read/Write/Delete на ваш бакет.

Який регіон вибрати в Nubbo?

Регіон бакета: nyc3, ams3, sfo2, sfo3, sgp1, lon1, fra1, tor1, blr1, syd1, atl1, ric1 або mkc1. Панель керування показує його поруч із назвою бакета.

Чому Nubbo не може налаштувати CORS з моїм обмеженим ключем?

Бо в DigitalOcean зміна CORS через API вимагає ключа з Full access. З обмеженим ключем ви додаєте правило самі в Settings, CORS Configurations.

Чи можна підключити бакети з кількох регіонів?

Так. Кожен бакет підключається зі своїм регіоном, і їх може бути стільки, скільки дозволяє ваш тариф.

Джерела

Ціни та ліміти взято з офіційних сторінок нижче. Провайдери їх змінюють, тож перевірте, перш ніж ухвалювати рішення.