rhanziy

node.js - 환경변수 관리(.env) 본문

Node.js

node.js - 환경변수 관리(.env)

rhanziy 2023. 3. 21. 09:44

 

보안상 작은 이점을 누리기위해 환경변수를 작성해보자.

나중에 작업환경이 바뀌거나 클라우드에 올릴 때도 요것만 변경해주면 쉽게 환경셋팅이 가능해진다.

npm install dotenv

 

server.js 상단에 작성

require('dotenv').config()

 

그리고 server.js와 같은 경로에 .env파일을 하나 생성하고, 환경변수들을 작성해준다.

PORT=8080
DB_URL="mongodb+srv://codingapple1@저쩌구"

 

그리고 server.js에서 환경변수를 가져다 쓸 때는 process.env.변수이름 로 불러온다.

MongoClient.connect(
    process.env.DB_URL,  // env에 작성한 URL
    { useUnifiedTopology : true},
    (error, client)=>{

    if(error) return console.log(error);
    db = client.db('todoapp');

    app.listen(process.env.PORT, function(){  // env에 작성한 PORT
        console.log('listening on 8080');
    });    
});

 

 

나중에 AWS, Google, Naver 클라우드 등을 이용해서 서버를 발행할 때

env파일을 똑같이 이용할 수 있다. 

구글 클라우드 서비스에 올릴 경우 env 파일을 따로 만드는게 아니라 app.yaml 파일 내에 환경변수들을 포함해야하는데

https://cloud.google.com/appengine/docs/standard/nodejs/config/appref#environment_variables

이런 곳을 참고해서 똑같이 환경변수를 제작하면 됨. 

다만 변수만드는 문법에 등호 대신 콜론 (:)을 쓴다고 한다.

Comments