1. 먼저, 서버 폴더로 들어가서 npm install 명령어로 필요한 모듈을 설치.
--> npm install 명령어를 적으면, package.json에 'dependencies'에 적혀있는 모듈들이 한꺼번에 설치된다.
"dependencies": {
"@codestates-cc/submission-npm": "^1.1.3",
"cors": "^2.8.5",
"dotenv": "^8.2.0",
"express": "^4.17.1",
"morgan": "^1.10.0",
"mysql": "^2.18.1",
"nodemon": "^2.0.7"
}
여기서 'mysql'모듈 : Cmarket Server가 MySQL server와 상호작용할 수 있게 한다.
2. 비밀번호를 코드에 작성할 수도 있겠지만, 보안상/편의상 이유로 비밀번호는 '환경 변수'로 분리해놓는 편이 더 좋다.
github과 같이 공개된 환경에 비밀번호가 노출되면 안되기 때문에, 환경 변수를 관리하는 파일(.env)은 반드시 '.gitignore'파일에 등록해야한다.
1> 먼저 비밀번호를 .env 파일에 환경변수로 저장해둔다.
DATABASE_SPRINT_PASSWORD=''
2> .gitignore파일에 .env 등록하기.
그러면 git에 올려도 .env파일은 업로드 되지 않는다.
.env //.gitignore파일에 적기
3> config.js파일에 'dotenv'모듈을 불러오면 환경변수를 사용할 수 있게 된다.
환경변수 사용 시, process.env.뒤에 변수 적으면 된다.
즉, process.env.DATABASE_SPRINT_PASSWORD === .env파일에 적어둔 DATABASE_SPRINT_PASSWORD값
const dotenv = require('dotenv'); //'dotenv'모듈 설치
dotenv.config(); //dotenv에서 config 내장함수 불러오기
const config = {
development: {
host: 'localhost',
user: 'root',
password: process.env.DATABASE_SPRINT_PASSWORD, //.env에 저장해둔 환경변수 사용
database: 'cmarket'
},
test: {
host: 'localhost',
user: 'root',
password: process.env.DATABASE_SPRINT_PASSWORD,
database: 'cmarket_test'
}
};
module.exports = config;
3. 서버 실행 : npm run start
"scripts": {
"start": "nodemon app.js"
}
'DataBase' 카테고리의 다른 글
im-sprint-cmarket-database 1. 스키마, 시드 파일 확인(schema.sql 파일 & seed.sql파일) (0) | 2021.11.17 |
---|