증상: nest build 중 아래와 같은 OOM 오류로 프로세스 종료환경: AWS Lightsail (RAM 512MB / vCPU 2 / SSD 20GB)원인: TypeScript 타입체크+트랜스파일 단계에서 Node.js 힙 사용량이 시스템 메모리 한도(≈512M
백엔드는 코드 우선(Code-First) 방식으로 개발하고, 완료된 API를 Swagger에 반영하는 형태로 진행.프론트엔드(Flutter)는 UI 화면을 먼저 제작한 뒤, 각 페이지에서 필요한 데이터는 텍스트 하드코딩으로 채워 넣음.이후 실제 API가 나오면 하드코딩

누구나 접근 가능: URL만 알면 로그인/권한 검증 없이 모든 사람이 이미지에 접근할 수 있음.데이터 유출: 리뷰 이미지에 개인정보·민감한 데이터가 포함될 경우, 외부 유출 위험이 큼.링크 유출 회수 불가: 한 번 노출된 퍼블릭 URL은 삭제 전까지 계속 유효 → 접근

기존 프로젝트에서는 각 도메인별로 하나의 DTO만 두며 사용하고 있었다.하나의 파일에 Query, Path, Body, Response, 내부용 DTO까지 모두 몰아 넣다 보니 변경 사유가 여러 개가 된다. 그 결과 수정 범위가 불필요하게 커지고, 코드 리뷰도 비효율적

https://docs.nestjs.com/openapi/introduction현재 Swagger 문서를 직접 생성해서 수동으로 작성하고 있었음.swagger 문서 생성 및 외부 문서 병합하여 사용 중. swaggerDocs.paths와 기존 document.

소품샵 정보를 제공하고, 리뷰·운영시간·상품 등을 포함한 상세 데이터를 보여주는 서비스https://soso-client-soso-web.vercel.app/DELETE /user/:uuid: 사용자 삭제GET /user/nickname/:nickName: 닉

어느 날 서버 500 에러가 나더니, 위처럼 오류가 발생했다.이유를 찾던 도중 SSL 인증서(HTTPS 인증서)의 유효 기간 또는 날짜 설정에 관련된 문제라는 글을 발견했다.해당 상태는 SSL 인증서의 유효 기간이 만료되어 생기는 문제였다. 처음에 인증서를 어디에 두
https://typeorm.io/working-with-repositoryTypeORM에서 특정 엔티티(User 등) 에 대해 데이터베이스 작업(조회, 저장, 삭제 등)을 수행하는 전용 도구EntityManager와 유사하지만, 하나의 엔티티에만 집중하도록
참고 문서 https://typeorm.io/working-with-entity-manager EntityManager란?
https://typeorm.io/relations일대일 (One-to-One)한 엔티티가 다른 엔티티와 1:1로 매핑됩니다. 예를 들어, 한 사용자가 하나의 프로필을 가질 수 있다.일대다 / 다대일 (One-to-Many / Many-to-One)한 엔티티가
https://typeorm.io/view-entitiesDB View를 표현하는 읽기 전용 엔티티@ViewEntity() 데코레이터로 정의실제 테이블이 아니라 SQL SELECT 문을 기반으로 구성됨또는 QueryBuilder로도 표현 가능:중요: where
https://typeorm.io/embedded-entities상속(inheritance) 대신 구성(composition)을 활용하여 코드 중복을 줄이는 강력한 방법여러 엔티티(User, Employee, Student 등)가 동일한 속성(firstName
https://typeorm.io/entitiesEntity는 데이터베이스 테이블에 매핑되는 클래스이다.즉, TypeORM에서는 User와 같은 클래스를 만들고 여기에 데코레이터(@Entity, @Column 등)를 붙여주면, 그것이 곧 데이터베이스의 하나의
https://docs.nestjs.com/exception-filtersNestJS에서 예외 발생 시 에러 응답의 형식과 처리 방식을 개발자가 직접 제어할 수 있도록 해주는 전용 에러 처리 컴포넌트이다.NestJS 애플리케이션 전반에서 발생하는 예외를 가로채

https://velog.io/@ckdwns9121/Github-Action을-이용해-AWS-Lightsail-CICD-파이프라인-구축하기-1편https://velog.io/@ckdwns9121/Github-Action을-이용해-AWS-Lightsai

SSH key > Create custom key 선택다운 받은 키는 원하는 곳에 위치시키기 (Desktop, ssh 등)아래 예시는 Desktop에 위치시킴권한 문제가 발생할 수 있기 때문에 chmod 400 your-key.pem 로 권한 변경접속된 상태

https://docs.nestjs.com/modules@Module() 데코레이터로 정의된 클래스이며, NestJS에서 어플리케이션을 구조화하고 관리하는 기본 단위이다.모든 NestJS 앱은 최소한 하나의 루트 모듈(AppModule) 을 가진다.모듈은 pr

서비스, 리포지토리, 팩토리, 헬퍼와 같은 많은 기본 Nest 클래스이다.Provider는 종속성으로 주입될 수 있어 객체가 서로 다양한 관계를 형성할 수 있다. @Injectable()를 추가하면 NestJS가 해당 클래스를 "의존성 주입 컨테이너(DI)"에서 관리할
https://typeorm.io/해당 글은 NestJS 프레임워크를 기반으로 설명합니다.Database는 MySQL을 기준으로 합니다.TypeORM + DB 드라이버 설치TypeORM 설정

참고 블로그 https://inpa.tistory.com/entry/AWS-%F0%9F%93%9A-S3-%EB%B2%84%ED%82%B7-%EC%83%9D%EC%84%B1-%EC%82%AC%EC%9A%A9%EB%B2%95-%EC%8B%A4%EC%A0%84-%EA%B5%