파일 저장소 (S3 호환)

문서

사진·업로드·백업 같은 파일을 저장하는 곳이에요. 이미 쓰던 S3 도구(aws-cli, boto3 등)에서 주소(endpoint)만 바꾸면 그대로 연결돼요. 저장소 관리·운영은 Onpod가 자동으로 하니까, 따로 다른 저장소 서비스에 가입할 필요가 없어요.

언제 쓰나요?

  • 파일 업로드·다운로드 — 사용자가 올린 사진·문서 보관
  • 정적 자산 — 앱이 보여주는 이미지·영상·다운로드 파일
  • 백업 — DB 덤프나 아카이브 보관
  • AI 산출물 — 생성한 이미지·영상·음성 같은 결과물 보관
  • 에이전트가 만든 파일 — 코딩 에이전트가 만든 결과물·중간 파일 보관

공유 디스크랑 뭐가 달라요?

공유 디스크는 팟 안 폴더로 붙어서(/workspace/shared/...) 평소처럼 파일을 읽고 써요. 반면 파일 저장소는 팟에 폴더로 붙이지 않고 인터넷 주소로 접근해요 — 팟이 없어도, 여러 앱이나 외부 도구에서도 같은 주소로 붙을 수 있어요. 학습 데이터셋을 팟에 붙여 쓸 거면 공유 디스크, 파일을 업로드·다운로드·백업으로 다룰 거면 파일 저장소예요.

버킷 만들기 → 접속 키 발급 → S3 도구에 연결

명령어는 외울 필요 없어요 — 에이전트한테 시켜도 돼요. 아래는 실제로 일어나는 3단계예요. 파일을 저장하는 버킷 하나를 버킷(파일 저장 단위)이라고 불러요.

코딩 에이전트한테 이렇게 말하세요

“파일 저장할 S3 버킷 하나 만들고 접속 키 발급해서 aws-cli 설정 알려줘”

1) 버킷 만들기 (이름은 3~63자, 소문자 영문·숫자와 하이픈 — 연속 하이픈(--)은 안 되고, 양 끝은 영문/숫자여야 해요):

onpod bucket create my-files

2) 접속 키 발급 — 접속 키와 비밀 키가 나와요. 비밀 키는 이때 딱 한 번만 보여줘요, 안전한 곳에 저장하세요.

onpod bucket key create
# onpod bucket key ls          # 발급한 키 목록
# onpod bucket key rm <id>     # 안 쓰는 키 폐기

3) S3 도구에 주소만 바꿔 연결 — 주소(endpoint)는 https://api.onpod.ai/s3 예요. ⚠️ 주소를 경로에 붙이는 경로 스타일로 설정해야 해요 (forcePathStyle / addressing_style=path).

# 발급받은 접속 키로 인증 설정 (aws configure 또는 환경변수)
aws --endpoint-url https://api.onpod.ai/s3 s3 cp ./file.zip s3://my-files/
aws --endpoint-url https://api.onpod.ai/s3 s3 ls s3://my-files/

# boto3 설정 스니펫은 onpod bucket config 로도 받을 수 있어요

요금

저장한 용량은 ₩45 / GB · 월, 게이트웨이로 내려받은 양은 ₩198 / GB예요 (2026년 12월 3일부터). 그 전에는 내려받기도 무료예요. 업로드와 요청은 계속 무료이고, 수십 GB 이상은 아래 R2 직결로, 사용자에게 바로 보여줄 파일은 공개 버킷(pub.onpod.ai, 전송 무제한 무료)으로 두면 전송료가 없어요. 자세한 단가는 /pricing 페이지 참고.

대용량은 R2 직결로 (전송료 없음)

게이트웨이로 내려받은 바이트에는 2026년 12월 3일부터 ₩198/GB가 붙어요 — 앱에 붙인 버킷(--attach-bucket)이 읽는 파일, 사전 서명(presigned) 주소로 받는 파일, /s3 로 읽는 공개 버킷도 같아요. 수십 GB 이상은 이 버킷에만 열리는 R2 직결 임시 키로 받으면 전송료가 없어요. 키는 기본 1시간(최대 24시간) 뒤 만료되고 읽기 전용이에요. 그날부터는 잔액이 0 이하이고 후불·조직 지갑이 없는 계정의 게이트웨이 다운로드가 403 AccountProblem 으로 막히고, R2 직결은 그대로 돼요.

# 읽기 전용 임시 키 발급 → 표준 aws-cli 가 R2 에 직접 붙어요
eval "$(onpod bucket direct my-files --format env)"
aws s3 cp s3://$ONPOD_R2_BUCKET/${ONPOD_R2_PREFIX}path/in/bucket.bin ./ --endpoint-url "$AWS_ENDPOINT_URL_S3"

# 버킷 안 객체 키 K 는 R2 에서 ${ONPOD_R2_PREFIX}K 예요

보안 — 접속 키 조심해서 다루기

내 파일은 나만 접근해요. 다만 접속 키는 내 버킷 전부에 접근할 수 있고 오래 유효하니까, 믿을 수 없는 곳 — 예를 들어 믿을 수 없는 코드가 실행되는 샌드박스 — 에는 절대 넣지 마세요. 혹시 유출됐다면 onpod bucket key rm 으로 바로 폐기하고 새로 발급하세요.

콘솔에서 보기

사이드바 「파일 저장소」(/buckets)에서 통과 접속 키를 만들고·확인하고·지울 수 있어요. 용량·파일 개수도 여기서 보여요.

개발자·에이전트용

REST API 엔드포인트나 인증 방식 같은 자세한 개발자용 내용은 onpod manual 을 참고하세요.