Skip to main content
Sonamu는 Flydrive 기반으로 여러 스토리지 드라이버를 지원합니다. 로컬 파일 시스템(fs)과 AWS S3를 동일한 인터페이스로 사용할 수 있습니다.

지원 드라이버

fs (File System)

로컬 파일 시스템

s3 (AWS S3)

AWS S3 호환 스토리지

fs 드라이버

로컬 파일 시스템에 파일을 저장합니다.

기본 설정

설정 옵션

파일 저장 위치
권장: 프로젝트 루트 기준 상대 경로

실전 예제

개발 환경

사용:

정적 파일 서빙

Fastify에서 정적 파일을 서빙해야 합니다:
결과:

s3 드라이버

AWS S3 또는 호환 스토리지에 파일을 저장합니다.

기본 설정

필수 환경변수

설정 옵션

AWS 자격증명
획득 방법:
  1. AWS Console → IAM
  2. 사용자 생성
  3. S3 권한 부여 (AmazonS3FullAccess)
  4. Access Key 생성

실전 예제

기본 S3 설정

사용:

CloudFront CDN 연동

장점:
  • 빠른 전송 속도 (엣지 로케이션)
  • 대역폭 비용 절감
  • 캐싱

퍼블릭 버킷 설정

S3 버킷을 퍼블릭으로 설정하려면:
주의: 민감한 데이터는 private 버킷 사용

S3 호환 스토리지

Cloudflare R2

특징:
  • 무료 egress (전송 비용 없음)
  • S3 API 호환
  • Cloudflare 네트워크

MinIO (Self-hosted)

드라이버 비교

실전 전략

개발/프로덕션 분리

다중 버킷 전략

사용:

주의사항

드라이버 설정 시 주의사항:
  1. 환경변수 관리: 절대 하드코딩 금지
  2. fs urlBuilder 필수: fs 드라이버는 반드시 urlBuilder 필요
  3. S3 권한 확인: IAM 사용자에게 S3 권한 부여
  4. 버킷 이름 고유성: S3 버킷 이름은 전역적으로 고유해야 함
  5. 리전 일치: bucket과 region이 일치해야 함

다음 단계

Storage Manager

여러 디스크 관리하기

파일 저장 및 조회

파일 업로드 및 다운로드

URL 빌더

파일 URL 생성하기