Super Kawaii Cute Cat Kaoani
본문 바로가기
⚙️ Back-end/Node.js

[Node.js] 여러가지 초기 셋팅 및 DB 설정

by wonee1 2024. 11. 21.
728x90

 

매번 프로젝트 새로 시작할 때마다 셋팅 찾아보는 게 번거로워서 이번 기회에 Node.js, express, swagger, prisma 등의 초기 설정을 기록해두기로 했다. 

 

 

1. Node.js 

 

🧷Node.js 설치확인하기 

 

 node -v

 

 

🧷초기 설정  및 모듈 설치 

 

package.json을 추가하기 위해서 다음 명령어를 실행해준다. 

npm init

 

 

그 후 express 를 설치 하기 위해서 다음 명령어를 실행해준다. 

 

npm install express

 

 

 

Nodemon을 설치해준다.

 

npm install --save-dev nodemon 혹은 npm install nodemon

 

 

 

➕추가적으로 설치해줄 모듈들 

 

예시) 예전에 미리 설치해뒀던 것들을 가져와봤다. 

  "dependencies": {
    "@prisma/client": "^5.21.1",
    "@quixo3/prisma-session-store": "^3.1.13",
    "bcrypt": "^5.1.1",
    "cors": "^2.8.5",
    "dotenv": "^16.4.5",
    "express": "^4.21.1",
    "express-session": "^1.18.1",
    "http-status-codes": "^2.3.0",
    "jsonwebtoken": "^9.0.2",
    "passport": "^0.7.0",
    "passport-google-oauth20": "^2.0.0",
    "passport-naver": "^1.0.6",
    "prisma": "^5.21.1",
    "swagger-autogen": "^2.23.7",
    "swagger-ui-express": "^5.0.1"
  }

 

 

또한 프로젝트를 진행할 때 꼭 gitignore 파일도 생성하도록 하자. 

 

 

 


 

 

2. DB 설정

 

많은 DB들이 있는데 나는 일단 Mysql을 사용하였다. 추후 Postgresql을 사용하는 방법도 추가해볼 예정이다. 

 

VScode에서 Mysql을 연동하는 법은 일단 env 파일을 작성하는 방법이 있다. 

 

DB_HOST=
DB_PORT=
DB_USERNAME=
DB_PASSWORD=
DB_NAME=

 

 

 Mysql의 정보를 env 파일에 넣어준다. 

 

 

또 다른 방법은 VS code Extensions에서 MySQL 검색 후 설치해준다. 

 

 

 

 


 

3. ORM 설정 

 

ORM은 평소에 프로젝트를 할 때 prisma을 많이 사용하기 때문에 prisma로 선택했다. 

 

 

 

🧷 prisma 셋팅

 

 

다음과 같이 prisma 모듈을 설치해준다. 

npm install @prisma/client prisma

 

 

 

.env 파일에 사용하는 db랑 유저 이름을 적어주면 된다.

DATABASE_URL="mysql://<DB_USER>:<DB_PASSWORD>@<DB_HOST>:<DB_PORT>/<DB_NAME>"

 

 

그 다음 prisma 설정 파일을 생성해준다.

 

npm exec prisma init

 

 

 

 

 


 

 

4. Swagger 설정 

 

 

swagger는 API를 설계 빌드 문서화 하는데 도움이 되는 도구이다. 따라서 미리 깔아두면 도움이 된다. 

 

swagger 공식 사이트🔽

https://swagger.io/

 

API Documentation & Design Tools for Teams | Swagger

Swagger and OpenAPI go hand‑in‑hand. Swagger offers powerful and easy to use tools to take full advantage of the OpenAPI Specification. See how we do it

swagger.io

 

 

npm add swagger-autogen swagger-ui-express

 

 

사용할 땐 꼭 import를 해줘서 사용한다. 

 

 

import swaggerAutogen from "swagger-autogen";
import swaggerUiExpress from "swagger-ui-express";

// ...

app.use(
  "/docs",
  swaggerUiExpress.serve,
  swaggerUiExpress.setup({}, {
    swaggerOptions: {
      url: "/openapi.json",
    },
  })
);

 

 

728x90

'⚙️ Back-end > Node.js' 카테고리의 다른 글

[Node.js] Express 기본 설정 및 웹 개발  (0) 2025.04.25