자동 이메일 첨부파일 클라우드 업로드 서비스 AWS S3 & Postmark
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

이메일 첨부파일을 클라우드 저장소에 자동 업로드 서비스

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

DevOps

대상자

  • Node.js 및 클라우드 인프라 개발자
  • Serverless 아키텍처 및 자동화 흐름 구축을 원하는 중급 이상 개발자
  • AWS S3, Postmark API 사용 경험자
  • No Database 구조의 애플리케이션 설계에 관심 있는 프로그래머

핵심 요약

  • AWS S3 및 Postmark Inbound API 활용
  • Postmark SDKAWS SDK v3를 통해 이메일 첨부파일을 클라우드에 자동 업로드
  • Serverless 기반 배포
  • Serverless Framework로 AWS Lambda + API Gateway 구축, 최소 권한 IAM 설정
  • 무데이터 아키텍처
  • DB 없이 .env 설정만으로 서비스 실행 가능, ts-node-dev로 로컬 개발 편의성 확보

섹션별 세부 요약

1. 서비스 개요

  • 이메일 첨부파일을 @email-to-s3.email로 전달 시 AWS S3에 자동 업로드
  • 사용자 인증 없이 이메일 주소 기반의 S3 폴더 구조 자동 생성
  • 예시: user@example.com/2023-10-15/report.pdf

2. 기술 스택

  • Node.js 14+TypeScript 기반 Express.js 서버
  • AWS SDK v3Postmark SDK 통합
  • StorageClient 추상화 레이어로 R2, Spaces 등 S3 호환 클라우드 지원
  • Serverless Framework로 AWS Lambda 배포

3. 인프라 구성

  • Serverless Frameworkserverless.yml 파일을 통해
  • AWS Lambda + API Gateway 배포
  • 최소 권한 IAM 정책 적용
  • S3 버킷 생성Access Key/Secret 인증 정보 입력 필수

4. Postmark 연동

  • InboundMessage 이벤트로 이메일 수신
  • Base64 인코딩 첨부파일을 S3에 스트리밍
  • 업로드 실패 시 HTTP 500 응답으로 Postmark 재시도 트리거
  • POSTMARK_SERVER_TOKEN으로 Transactional API 응답 메시지 전송 가능

5. 개발자 경험

  • .env 파일에만 설정값 입력 후 npm installserverless deploy로 즉시 배포
  • 로컬 개발 시 ts-node-dev로 실시간 코드 반영
  • No Database 아키텍처로 인한 유지보수성 향상

결론

  • Serverless 기반 S3 자동 업로드 서비스 구축 시 Serverless Framework + StorageClient 추상화 활용
  • Postmark Inbound API를 통해 이메일 첨부파일을 Base64로 스트리밍하여 S3 업로드
  • .env 파일 설정만으로 서비스 실행 가능하며, ts-node-dev로 로컬 개발 편의성 확보
  • GitHub 저장소에서 코드 확인 가능