Skip to main content

2025년 10월 변경 사항

  • Date: 2025-10-31
  • Documents:
  • Summary:
    • SQS 기반 비동기 연산 파이프라인 구축 및 안정화:

      • 백엔드 (NestJS) 주요 변경 사항:
        • SQS 메시지 전송 로직 중앙화: SqsProducerModuleSqsProducerService를 생성하여 SQS 메시지 전송, 수신, 삭제 로직을 캡슐화하고, 모든 환경에서 실제 AWS SQS를 사용하도록 통합했습니다.
        • generation API 개선: CreateGenerationDtoprompt 필드를 workflow로 변경하여 ComfyUI 워크플로우 JSON을 직접 받도록 했으며, Swagger ApiBody 예시를 업데이트했습니다. 또한, generation API 호출 시 userId를 인증된 사용자 정보에서 자동으로 추출하여 SQS 메시지에 포함하도록 수정했습니다。
        • 환경 변수 유효성 검사 강화: 필수 환경 변수(SQS_COMPUTATION_QUEUE_URL, AWS_REGION) 누락 시 애플리케이션 초기화 단계에서 명확한 에러를 발생시켜 런타임 안정성을 확보했습니다.
        • 테스트 API 강화: SQS 큐 메시지 미리보기(GET /test/sqs-peek-messages) 및 동적 메시지 전송(POST /test/sqs-queue-stack-test) 기능을 추가하고 Swagger 문서화를 개선했습니다.
        • 타입 안전성 확보: src/types/express.d.ts를 통해 Express Request 객체를 확장하고 req.user 접근 시 타입 에러를 해결했습니다.
    • 연산 서버 (ComfyUI & SQS Poller) 주요 변경 사항:

      • sqs_poller 컨테이너화 및 리팩토링: sqs_poller 스크립트를 Docker 컨테이너로 분리하고 docker-compose로 관리하도록 변경했습니다. 스크립트 자체도 객체 지향 방식으로 리팩토링하고 logging 모듈을 도입하여 코드 품질과 유지보수성을 높였습니다.
      • SQS 메시지 처리 로직 구현: SQS 메시지의 TaskTypeEnvironment 속성을 기반으로 조건부 메시지 처리를 구현했으며, 메시지 본문의 workflow 필드를 정확히 읽어 ComfyUI에 전달하도록 수정했습니다.
      • Docker Compose 네트워크 문제 해결: docker-compose.yml에서 ai-network를 명시적으로 지정하여 sqs_pollercomfyui 컨테이너 간의 네트워크 통신 문제를 해결했습니다.

  • Date: 2025-10-30
  • Documents:
  • Summary:
    • AWS 서비스 연동 완료 및 문서 업데이트:
      • AWS 서비스 연동: 백엔드 애플리케이션과 핵심 AWS 서비스(S3, SQS, Redis)의 연동을 완료했습니다.
      • 테스트 모듈 구현: 인프라 연동 테스트 API를 중앙에서 관리하기 위해 TestModule을 별도로 생성하고, 각 서비스(S3, SQS, Redis)의 동작을 검증할 수 있는 테스트 API를 구현했습니다.
      • 문서 업데이트:
        • project-overview/01-introduction/OVERVIEW.md: 핵심 목표 섹션에 서비스 연동 완료 사실을 명시했습니다.
        • backend/README.md: TestModule을 통한 인프라 연동 테스트 방법을 추가하여 설명을 보강했습니다.

2025-10-29

인프라 서비스 추가 및 API 버전 관리 도입

  • Redis ElastiCache 통합: 백엔드 캐싱 레이어로 Redis ElastiCache를 도입하고, 관련 환경 변수 및 설정을 문서화했습니다.
  • S3 버킷 생성: 이미지/비디오 생성 결과물 저장을 위한 S3 버킷을 생성하고, 관련 환경 변수 및 설정을 문서화했습니다.
  • SQS 큐 설정: 비동기 작업 처리를 위한 SQS 큐를 설정하고, 관련 환경 변수 및 설정을 문서화했습니다.
  • 백엔드 API 버전 관리: 모든 백엔드 API에 /v1 경로 접두사를 도입하여 버전 관리를 시작했습니다. 헬스 체크 경로도 /api/v1로 변경되었습니다.
  • 배포 및 연결 문제 해결:
    • VPC CIDR 충돌로 인한 EKS 클러스터 재생성 및 관련 GitHub Actions 권한 문제 해결.
    • RDS, ElastiCache Redis, SQS, S3 연결 정보 및 보안 그룹 설정 문제 해결.
    • Redis ElastiCache의 "전송 중 암호화" 활성화에 따른 클라이언트 TLS 설정 (rediss:// 스키마, connectTimeout 추가) 문제 해결.
    • 백엔드 애플리케이션 시작 지연 및 startupProbe 실패 문제 해결 (Swagger 초기화 지연, startupProbe failureThreshold 증가).

2025-10-28

이미지/비디오 생성 아키텍처 정제 및 문서화

  • project-overview/03-architecture/ARCHITECTURE.md: 이미지/비디오 생성 파이프라인을 SQS, Redis, 전용 AI 연산 워커 및 후처리 워커를 활용하는 분산 아키텍처로 상세히 업데이트했습니다. Mermaid 다이어그램도 새로운 흐름을 반영하여 수정했습니다.
  • project-overview/01-introduction/OVERVIEW.md: 핵심 목표 섹션을 업데이트하여 생성/후처리 워커 분리 및 비동기 파이프라인의 중요성을 강조했습니다.
  • project-overview/02-planning/ROADMAP.md: 'SQS 기반 비동기 Generate 기능 구현' 관련 정제된 아키텍처에 대한 설명을 추가했습니다.
  • backend/README.md: GenerationModule 섹션을 추가하여 백엔드가 SQS를 통해 이미지/비디오 생성을 오케스트레이션하는 역할을 명시했습니다。

2025-10-27

Docs development 브랜치 Vercel 배포 추가

  • Vercel 배포 도입: docs-vivid-ai/website 프로젝트의 development 브랜치에 대한 Preview 배포를 Vercel을 통해 구성했습니다. 이를 통해 main 브랜치의 프로덕션 배포(AWS)와 분리하여 개발 및 테스트 변경사항을 빠르게 확인하고 검토할 수 있게 되었습니다.
  • 배포 자동화: development 브랜치에 코드가 푸시될 때마다 Vercel이 자동으로 빌드 및 배포를 수행합니다.
  • 문서 업데이트: INFRA_DEPLOYMENT.md 문서에 development 브랜치의 Vercel 배포 현황 및 방식을 추가하여, main 브랜치의 AWS 배포와 명확히 구분하고 설명했습니다.

2025-10-22

개발 환경 배포 자동화 (CI/CD) 구축

  • GitHub Actions 워크플로우 구축: frontend-autopromaker-aibackend-autopromaker-ai 서브모듈 리포지토리의 development 브랜치에 코드가 푸시될 때, 자동으로 EKS 개발 서버에 배포되는 CI/CD 파이프라인을 구축했습니다.
  • OIDC 인증 도입: GitHub Actions가 AWS와 안전하게 통신할 수 있도록, 장기 자격 증명 대신 OIDC(OpenID Connect)를 사용하여 임시 역할을 수임하는 방식으로 인증을 강화했습니다.
  • 배포 방식 표준화: kubectl set image 명령을 사용하여 새로운 Docker 이미지를 롤링 업데이트 방식으로 배포하도록 두 워크플로우의 배포 전략을 통일했습니다.
  • 문서화: EKS_DEPLOYMENT.md에 배포 자동화(CI/CD)에 대한 상세한 설명과 구성 방법을 추가하여, 향후 팀원들이 쉽게 이해하고 관리할 수 있도록 했습니다.

2025-10-21

EKS 배포 및 핵심 기능 안정화

  • EKS 배포: AWS EKS에 백엔드 및 프론트엔드 애플리케이션의 마이그레이션 및 안정화 완료.
  • 데이터베이스 연결: POSTGRES_SSL_ENABLED 환경 변수를 통한 SSL 구성 등 PostgreSQL RDS 연결 문제 해결.
  • ALB Ingress 구성:
    • /api (백엔드) 및 / (프론트엔드)에 대한 경로 기반 라우팅 구현.
    • rewrite-target 어노테이션 문제 해결을 위해 백엔드에 글로벌 /api 접두사 구성 및 Ingress에서 rewrite-target 어노테이션 제거.
    • 백엔드 (/api/health) 및 프론트엔드 (/health)에 대한 서비스별 헬스 체크 구성.
    • Ingress 리소스 삭제 지연 (finalizer 제거) 문제 해결 및 문서화.
  • 인증 및 쿠키 관리:
    • JWT 기반 인증 안정화.
    • SECURE_COOKIES 환경 변수를 사용하여 auth.controller.ts에서 쿠키 (secure, sameSite) 처리를 개선하여 다양한 환경 (HTTP/HTTPS)에서 쿠키 전송 보장.
    • JWT_SECRET 업데이트를 통한 보안 강화.
  • 환경 관리: NODE_ENV, SECURE_COOKIES, POSTGRES_SSL_ENABLED를 사용하여 production, development, local 환경을 명확하게 구분.
  • 프론트엔드 API URL: NEXT_PUBLIC_API_URL을 통해 프론트엔드가 올바른 API 호출을 수행하도록 보장.

2025-10-17

업데이트된 문서주요 변경 내용
project-overview/04-infra-deployment/EKS_DEPLOYMENT.md(신규/수정) NestJS, NextJS, PostgreSQL을 AWS EKS에 배포하는 상세 가이드 문서 추가 및 실제 배포 과정, 트러블슈팅 내용으로 업데이트.
frontend-autopromaker-ai/next.config.ts(수정) Next.js standalone output 설정을 위해 output: 'standalone' 추가.
frontend-autopromaker-ai/src/types/web3.d.ts(수정) any 타입 사용으로 인한 ESLint/TypeScript 오류 해결을 위해 이벤트 리스너 타입 오버로딩 및 unknown[] 타입 적용.
frontend-autopromaker-ai/src/providers/Web3Provider.tsx(수정) handleChainChanged 함수 파라미터 타입 수정으로 TypeScript 오류 해결.
backend-autopromaker-ai/Dockerfile(신규) 백엔드 애플리케이션용 멀티-스테이지 Dockerfile 생성.
frontend-autopromaker-ai/Dockerfile(신규) 프론트엔드 애플리케이션용 멀티-스테이지 Dockerfile 생성.
secret.yaml(신규) RDS 데이터베이스 접속 정보를 위한 Kubernetes Secret 파일 생성 및 .gitignore에 추가.
backend-deployment-dev.yaml(신규) 백엔드 애플리케이션 배포를 위한 Kubernetes Deployment 파일 생성.
frontend-deployment-dev.yaml(신규) 프론트엔드 애플리케이션 배포를 위한 Kubernetes Deployment 파일 생성.
backend-service-dev.yaml(신규) 백엔드 애플리케이션 접근을 위한 Kubernetes Service (ClusterIP) 파일 생성.
frontend-service-dev.yaml(신규/수정) 프론트엔드 애플리케이션 접근을 위한 Kubernetes Service (LoadBalancer -> ClusterIP) 파일 생성 및 타입 변경.
ingress-dev.yaml(신규) 경로 기반 라우팅을 위한 Kubernetes Ingress 파일 생성.
iam_policy.json, iam_policy_updated.json(신규/수정) AWS Load Balancer Controller 설치를 위한 IAM 정책 파일 다운로드 및 권한 문제 해결을 위한 정책 업데이트.

2025-10-16

업데이트된 문서주요 변경 내용
project-overview/04-infra-deployment/README.md(수정) EKS_DEPLOYMENT.md 링크를 포함하도록 목차 업데이트.
project-overview/01-introduction/OVERVIEW.md(수정) 클라우드 서비스 부분을 ECS에서 EKS로 변경.
project-overview/03-architecture/ARCHITECTURE.md(수정) 아키텍처 설명을 ECS에서 EKS로 변경하고, 다이어그램의 클러스터 이름도 EKS로 업데이트.
project-overview/02-planning/ROADMAP.md(수정) 배포 계획을 ECS에서 EKS로 수정.
project-overview/TECH_STACK.md(수정) 배포 및 로깅/모니터링 기술 스택을 ECS에서 EKS로 변경.
project-overview/SECURITY_CONSIDERATIONS.md(신규) 인증 및 전반적인 보안 강화 계획 문서 추가.
project-overview/README.mdSECURITY_CONSIDERATIONS.md 링크를 포함하도록 목차 업데이트.
backend/AUTH_FLOW.md(수정) 쿠키 기반 인증 흐름 및 로그아웃 과정 반영.
backend/API_SPEC_AUTH.md(수정) POST /auth/login 응답 스키마 변경 및 POST /auth/logout API 명세 추가.
frontend/AUTH_FLOW.md(신규) Web3 기반 인증 흐름 상세 문서 추가.
frontend/WEB3_INTEGRATION.md(신규) Web3 통합 상세 (ethers.js, 잔액 조회 등) 문서 추가.
frontend/README.md프론트엔드 주요 변경 사항 (네비게이션 바, 대시보드, USDT 잔액 표시 등) 반영.
frontend/ARCHITECTURE.md프론트엔드 레이아웃 및 네비게이션 구조 변경 반영.
project-overview/02-planning/ROADMAP.md'비고'란 추가 및 내용 업데이트.

2025-10-15

업데이트된 문서주요 변경 내용
frontend/README.md프론트엔드 아키텍처 원칙 및 폴더 구조 개요 추가.
frontend/ARCHITECTURE.md(신규) 프론트엔드 상세 아키텍처(상태 관리, 데이터 페칭 등) 문서 추가.
(수정) JWT 저장 방식에 대한 보안 고려사항(localStorage vs HttpOnly Cookie) 추가.
backend/main.ts, *.controller.ts, *.dto.ts(기능) 백엔드에 Swagger(OpenAPI) 도입 및 API 문서 상세화.
project-overview/TECH_STACK.md기술 스택에 Swagger (OpenAPI) 명시.
backend/README.mdSwagger UI 접근 방법 및 사용법 안내 추가.
project-overview/04-infra-deployment/DEV_COMPUTE_SERVER.md(신규) Docker를 이용한 개발용 AI 연산 서버 구축 가이드 추가.
project-overview/04-infra-deployment/README.mdDEV_COMPUTE_SERVER.md 링크를 포함하도록 목차 업데이트.

2025-10-10

업데이트된 문서주요 변경 내용
project-overview/MODULES.md'유저 및 인증' 모듈 설명을 Web3 기반(Nonce, Signature)으로 구체화.
backend/AUTH_FLOW.md(신규) Web3 로그인 전체 흐름(7단계) 및 시퀀스 다이어그램 추가.
backend/API_SPEC_AUTH.md(신규) 인증 관련 API (/nonce, /login) 명세 추가.
backend/README.md백엔드 개요 및 구현된 모듈(Users, Auth) 설명, 상세 문서 링크 추가.
project-overview/README.mdinfra-deployment, QNA 등 누락된 문서 링크를 포함하도록 목차 업데이트.