[유튜브 클론코딩] 3.2 Configuring Dot Env

2021. 3. 1. 16:42Projects/유튜브 클론코딩

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
반응형