[유튜브 클론코딩] 3.2 Configuring Dot Env
2021. 3. 1. 16:42ㆍProjects/유튜브 클론코딩
728x90
반응형
3.2 Configuring Dot Env
.env 파일 생성
먼저 .env라는 파일을 생성한다.
여기 MONGO_URL이라는 variable을 만들어본다.
MONGO_URL = "mongodb://localhost:27017/mytube"
PORT=4000
↑ .env
import mongoose from "mongoose";
import dotenv from "dotenv";
dotenv.config();
mongoose.connect(
process.env.MONGO_URL,
{
useNewUrlParser: true,
useFindAndModify:false
}
);
const db = mongoose.connection;
const handleOpen = () => console.log("✅ Connected to DB");
const handleError = () => console.log("❌ Error on DB Connection: ${error}");
db.once("open", handleOpen);
db.on("error",handleError);
↑ db.js
그리고 여기 누구나 볼 수 있는 URL 대신에 이걸 지우고 .env로부터 정보를 가져오자
dotenv.config라는 함수로 .env 파일 안에 있는 정보를 불러올 수 있다.
그리고 찾은 모든 variable 들을 process.env.key에 저장할 것이다.
.env 파일을 .gitignore에도 추가하기
어차피 근데 이미 env파일은 .gitignore에 자동으로 추가되었다.
init.js에서도 PORT를 숨겨보기
import "./db";
import app from "./app";
import dotenv from "dotenv";
dotenv.config();
const PORT = process.env.PORT || 4000;
const handleListening = () => console.log(`✅Listening on: http://localhost:${PORT}`);
app.listen(PORT, handleListening);
↑ init.js
이런식으로 key를 숨기는 것이다. 이렇게 하면 키가 다른 곳에서 보이지 않는다.
★ .env파일을 .gitignore파일에 추가해서 ignore하는 것을 잊지말기
그렇지 않으면 이 키를 github에 올리게 되고 헛고생하는게 된다
728x90
반응형
'Projects > 유튜브 클론코딩' 카테고리의 다른 글
[유튜브 클론코딩] 3.4 Comment Model (0) | 2021.03.02 |
---|---|
[유튜브 클론코딩] 3.3 Video Model (0) | 2021.03.01 |
[유튜브 클론코딩] 3.1 Connecting to MongoDB (0) | 2021.03.01 |
[유튜브 클론코딩] 3.0 MongoDB and Mongoose (0) | 2021.03.01 |
[유튜브 클론코딩] 2.25 More Controllers (0) | 2021.02.24 |