NestJS 란?
- NestJS는 Express처럼 node.js의 프레임 워크 중 하나입니다.
- Express 가 높은 자유도를 갖고 있는 반면 NestJS 는 프레임워크 디자인 및 코드 규칙이 많이 강화되었습니다.
- Typescript 기반의 OOP, FP, FRP를 지원합니다.
- 안정적이며 확장에 용이하게 디자인되어있습니다.
Node.js 설치
NestJS를 사용하기 위해선 Node.js 가 필요합니다.
Node.js 공식 홈페이지에서 Node.js를 설치해줍니다. (안정적인 버전인 LTS 버전을 추천합니다.)
NestJS 프로젝트 생성
Node.js 를 설치하면 npm이라는 패키지 관리자도 함께 설치되기 때문에 지금부터 npm 패키지 관리자를 사용할 수 있습니다.
NestJS 서버를 구성하기 전에 @nestjs/cli 를 먼저 설치해 줍니다.
$ npm install -g @nestjs/cli
패키지가 설치되어있는 경로는 npm root -g 로 확인할 수 있습니다.
NestJS 프로젝트를 생성합니다.
$ nest new nestjs-blog
저는 패키지 매니저로 npm을 선택하여 설치해 주었습니다.
다음과 같이 프로젝트 생성이 되었으면 프로젝트 설치가 성공적으로 된 것입니다.
⚡ We will scaffold your app in a few seconds..
CREATE nestjs-blog/.eslintrc.js (665 bytes)
CREATE nestjs-blog/.prettierrc (51 bytes)
CREATE nestjs-blog/README.md (3340 bytes)
CREATE nestjs-blog/nest-cli.json (118 bytes)
CREATE nestjs-blog/package.json (1996 bytes)
CREATE nestjs-blog/tsconfig.build.json (97 bytes)
CREATE nestjs-blog/tsconfig.json (546 bytes)
CREATE nestjs-blog/src/app.controller.spec.ts (617 bytes)
CREATE nestjs-blog/src/app.controller.ts (274 bytes)
CREATE nestjs-blog/src/app.module.ts (249 bytes)
CREATE nestjs-blog/src/app.service.ts (142 bytes)
CREATE nestjs-blog/src/main.ts (208 bytes)
CREATE nestjs-blog/test/app.e2e-spec.ts (630 bytes)
CREATE nestjs-blog/test/jest-e2e.json (183 bytes)
? Which package manager would you ❤️ to use? npm
▹▹▹▸▹ Installation in progress... ☕
✔ Installation in progress... ☕
🚀 Successfully created project nestjs-blog
로컬 서버 실행
이렇게 설치가 마무리되었으면 바로 로컬 서버를 실행할 수 있습니다.
저는 개발 모드로 서버를 실행했습니다.
package.js 파일을 열어 보면 서버 실행의 다양한 방법이 기본적으로 만들어져 있는 것을 확인하실 수 있습니다.
$ npm run start:dev
main.ts 가 서버 실행 시 가장 먼저 호출되는 부분인데요 코드 내용을 확인해 보면 port 3000번으로 서버가 실행된 것을 보실 수 있습니다.
async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(3000);
}
bootstrap();
브라우저에서 정상적으로 서버가 동작되었는지 페이지를 열어 봅시다.
Hello World! 가 보이시나요 그렇다면 로컬 서버가 정상적으로 실행된 것입이니다.
'개발 > NestJS' 카테고리의 다른 글
[NestJS] NestJS provider - 종속성 주입이란 (0) | 2023.02.11 |
---|---|
[NestJS]NestJS 에서 서비스 상태체크 하기(HealthCheck) (0) | 2023.02.04 |