태그
목차

CLI 개요

생성일: 2024-03-12

수정일: 2024-03-12

Nest CLI는 Nest 애플리케이션을 초기화, 개발 및 유지 관리하는 데 도움이 되는 명령줄 인터페이스 도구다.

Nest CLI는 프로젝트 스캐폴딩, 개발 모드 서비스, 프로덕션 배포를 위한 애플리케이션 빌드 및 번들링 등 다양한 기능을 지원한다. 그리고 이를 통해 모범 사례 아키텍처 패턴을 구현하여 잘 구조화된 앱을 장려한다.

설치

npm install -g 명령을 사용하여 CLI를 전역으로 설치한다.

npm install -g @nestjs/cli

Note

또는 cli를 전역으로 설치하지 않고 npx @nestjs/cli@latest 명령을 사용할 수 있다.

기본 워크플로

설치가 완료되면 nest 실행 파일을 통해 OS 명령줄에서 직접 CLI 명령을 호출할 수 있다.

다음을 입력하여 사용 가능한 nest 명령을 확인한다:

nest --help

다음 명령을 사용하여 개별 명령에 대한 도움말을 확인한다.

아래 예제에서 generate 대신 new , add 등의 명령을 대입하면 해당 명령에 대한 자세한 도움말을 볼 수 있다:

nest generate --help

개발 모드에서 새 기본 Nest 프로젝트를 생성, 빌드 및 실행하려면 새 프로젝트의 부모가 될 폴더로 이동하여 다음 명령을 실행한다:

nest new my-nest-project
cd my-nest-project
npm run start:dev

브라우저에서 http://localhost:3000 을 열어 새 애플리케이션이 실행되는 것을 확인한다. 소스 파일을 변경하면 앱이 자동으로 다시 컴파일되어 로드된다.

프로젝트 구조

nest new 를 실행하면 Nest는 새 폴더를 만들고 초기 파일 세트를 채워서 보일러플레이트 애플리케이션 구조를 생성한다. 이 문서 전체에 설명된 대로 이 기본 구조에서 계속 작업하면서 새 컴포넌트를 추가할 수 있다. nest new 로 생성된 프로젝트 구조를 표준 모드라고 한다. Nest는 여러 프로젝트와 라이브러리를 관리하기 위한 대체 구조인 모노레포 모드도 지원한다.

빌드 프로세스가 작동하는 방식에 관한 몇 가지 특정 고려 사항 이외에는 내장된 라이브러리 지원을 포함하여 나머지 Nest 기능 및 문서는 표준 및 모노레포 모드 프로젝트 구조에 모두 동일하게 적용된다. 사실, 향후 언제든지 표준 모드에서 모노레포 모드로 쉽게 전환할 수 있으므로 Nest에 대해 학습 중이면서 이 결정을 미룰 수 있다.

두 모드 중 하나를 사용하여 여러 프로젝트를 관리할 수 있다. 다음은 차이점을 간단히 요약한 것이다:

기능 표준 모드 모노레포 모드
다중 프로젝트 별도의 파일 시스템 구조 단일 파일 시스템 구조
node_modules & package.json 인스턴스 분리 모노레포 전체에서 공유
기본 컴파일러 tsc webpack
컴파일러 세팅 별도로 지정 프로젝트별로 재정의할 수 있는 모노레포 기본값
.eslintrc.js , .prettierc 등 과 같은 설정 파일 별도로 지정 모노레포 전체에서 공유
nest build & nest start 명령 프로젝트가 자동으로 선택된다 default project가 선택된다
라이브러리 npm 패키징을 통해 수동으로 관리 경로 관리 및 번들링을 포함한 기본 제공 지원

어떤 모드가 가장 적합한지 결정하는 데 도움이 되는 자세한 내용은 워크스페이스라이브러리 섹션을 참조한다.

CLI 명령 문법

모든 nest 명령은 다음과 같이 동일한 형태를 따른다.

nest commandOrAlias requiredArg [optionalArg] [options]

예를 들어:

nest new my-nest-project --dry-run

여기서 newcommandOrAlias 다. new 명령의 별칭은 n 이다. my-nest-projectrequiredArg 다. 명령줄에 requiredArg 가 제공되지 않으면 nest 가 이를 묻는 메시지를 표시한다. 또한 --dry-run 은 약식 -d 로 표현할 할 수 있다. 이를 염두에 두고 다음 명령은 위 명령과 동일하다:

nest n my-nest-project -d

대부분의 명령어와 일부 옵션에는 별칭이 있다. nest new --help 를 실행하여 이러한 옵션과 별칭을 확인할 수 있다.

명령 개요

nest <command> --help 명령을 사용하여 command 별 옵션을 확인할 수 있다.

각 명령에 대한 자세한 설명은 사용법을 참조한다.

명령 별칭 설명
new n 실행에 필요한 모든 보일러플레이트 파일이 포함된 새로운 표준 모드 애플리케이션을 스캐폴드한다.
generate g 스키마를 기반으로 파일을 생성 및/또는 수정한다.
build 애플리케이션 또는 워크스페이스를 출력 폴더에 컴파일한다.
start 애플리케이션(또는 워크스페이스의 기본 프로젝트)을 컴파일하고 실행한다.
add Nest 라이브러리로 패키징된 라이브러리를 가져와서 설치 스키마를 실행한다.
info i 설치된 Nest 패키지에 대한 정보 및 기타 유용한 시스템 정보를 표시한다.