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 권한으로 버킷을 선택하고 키 이름을 정해 만드세요.
- 액세스 키와 시크릿을 복사하세요. 제한된 키는 버킷 정책이 있는 버킷에서는 작동하지 않아요.
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로 돌아가 추가했어요, 확인을 누르세요. 일부 프로바이더는 적용하는 데 1분 정도 걸려요. 키에 CORS 변경 권한이 있다면 자동 설정 시도로 Nubbo가 대신 설정해 줘요.
문제가 생겼을 때
| Nubbo 메시지 | 해결 방법 |
|---|---|
| “인증 정보가 유효하지 않아요. 액세스 키와 시크릿 액세스 키를 확인해 주세요.” | 두 키를 앞뒤 공백 없이 다시 복사하세요. |
| “이 키는 버킷 하나로 제한된 것 같아요. 제한된 방식으로 계속하거나 전체 액세스 권한이 있는 키를 만들 수 있어요.” | 제한된 키로 계속을 누르거나, 계정 전체에 액세스할 수 있는 키를 만든 뒤 다른 키 사용해 보기를 누르세요. |
| “bucket을 찾을 수 없어요. 이름과 리전을 확인해 주세요.” | 정확한 버킷 이름과 선택한 리전이 버킷의 리전인지 확인하세요. |
| “키에 버킷 생성 권한이 없어요.” | 전체 액세스 권한이 있는 키를 사용하거나, 관리 화면에서 버킷을 만든 뒤 관리 화면에서 만들었어요를 누르세요. |
| “이 이름은 이 프로바이더에서 이미 사용 중이에요. 다른 이름을 시도하세요.” | 버킷 이름은 프로바이더 전체에서 고유해야 해요: 다른 이름을 고르세요. |
| “키에 설정 권한이 없어요.” | 위에서 설명한 대로 CORS 규칙을 직접 추가하세요. |
| “아직 작동하지 않아요. 규칙을 검토하고 다시 확인하세요. 일부 프로바이더는 적용하는 데 1분 정도 걸려요.” | 오리진이 끝에 슬래시 없이 정확히 https://nubbo.app인지 확인하고, 1분 정도 기다린 뒤 다시 확인하세요. |
| “이 bucket은 이미 사용 중이에요.” | 이 버킷은 내 계정이나 다른 계정에서 이미 Nubbo에 연결되어 있어요. |
| “bucket이 다른 리전에 있어요. 설정된 리전을 확인해 주세요.” | 버킷을 만든 리전과 같은 리전을 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에서 직접 추가하세요.
여러 리전의 버킷을 연결할 수 있나요?
네. 각 버킷은 자체 리전으로 연결되며, 요금제에서 허용하는 만큼 연결할 수 있어요.
출처
요금과 제한은 아래 공식 페이지를 기준으로 해요. 프로바이더가 변경할 수 있으니 결정하기 전에 확인하세요.