-
[first project] 3일차 회고 / 백엔드 기초 환경 세팅 및 DB 구축 1project 2022. 4. 7. 21:13반응형
부분적인 로그인 구현에 앞서 백엔드 기초 환경을 세팅했다.
기초 환경 세팅은 다음 프로젝트에서도 사용할 수 있게 나만의 템플릿을 적어놓으려고 한다.백엔드 기초 환경 세팅
비어있는 프로젝트 폴더 안에서 server 폴더를 만든다.
first-project/servermkdir server
npm init을 통해 해당 폴더에서 npm을 활용할 수 있도록 초기화시켜준다.
npm init
prettier를 설치하고 server 폴더 바로 하위에 .prettierrc 파일을 생성해서 아래 내용을 추가한다.
npm i prettier
// .prettierrc { "printWidth": 100, "tabWidth": 2, "useTabs": false, "semi": true, "singleQuote": false, "quoteProps": "as-needed", "jsxSingleQuote": false, "trailingComma": "es5", "bracketSpacing": true, "bracketSameLine": false, "arrowParens": "always" }
그 후 필요한 모듈들을 한꺼번에 다운받아준다.
npm install --save-dev nodemon express cors cookie-parser axios dotenv jsonwebtoken mysql2 sequelize sequelize-cli
이제 sequelize-cli를 활용해 폴더구조를 구축해준다.
npx sequelize-cli init
위와 같이 구축하게 되면
기초 폴더 셋팅 완료된다.
이제 config -> config.json에 접속해
mysql에 접속할 username과 password, 사용하고자 하는 DB를(생성할 DB이름) 작성한다.require("dotenv").config(); module.exports = { development: { username: process.env.DATABASE_USERNAME, password: process.env.DATABASE_PASSWORD, database: process.env.DATABASE_NAME, host: 'localhost', dialect: 'mysql' }, test: { username: process.env.DATABASE_USERNAME, password: process.env.DATABASE_PASSWORD, database: process.env.DATABASE_NAME, host: 'localhost', dialect: 'mysql' }, production: { username: process.env.DATABASE_USERNAME, password: process.env.DATABASE_PASSWORD, database: process.env.DATABASE_NAME, host: 'localhost', dialect: 'mysql' } };
물론 위에서 dotenv를 사용했기 때문에 .env파일을 만들어서 각각 넣어준다.
DATABASE_USERNAME=kimcoding DATABASE_PASSWORD=0123456789 DATABASE_NAME="db-practice"
이제 해당 DB 이름으로 mysql에 스키마를 생성한다.
npx sequelize db:create
이제 "db-practice"라는 이름의 데이터베이스가 만들어졌다면 sequelize 세팅은 되었고 다음편에서 테이블을 생성해보자 !
반응형'project' 카테고리의 다른 글
[first project] sequelize로 데이터베이스 다루는 법 (0) 2022.04.10 [first project] 협업에서 필요한 데이터베이스 사용법(feat. MYSQL, Sequelize) (0) 2022.04.09 [first project] 팀 내 Git Workflow 정리 (0) 2022.04.09 [first project] 4일차 회고 / 백엔드 기초 환경 세팅 및 DB 구축 2 (0) 2022.04.08 [first project] 1~2일차 회고(feat. SR의 중요성) (0) 2022.04.05