웹 개발

[포스코X코딩온] 환경변수 ENV 설정

끊임없이 성장중인 개발자 2023. 12. 14. 21:12
728x90
반응형

포스팅 주제

  • 환경변수 ENV

환경변수

 

환경변수 ENV

 

환경변수란?

  • 운영 체제(OS)나 어플리케이션에서 사용되는 데이터 값을 저장하는 메커니즘
  • 프로그램의 동작을 조정하거나 구성
  • node.js에서도 이러한 환경변수를 활용하여 애플리케이션의 설정과 동작을 조정

 

Node.js에서 process.env 객체를 통해 환경변수에 접근

 

.env

  • 환경변수를 관리하기 위해 .env파일을 사용하는 것이 일반적
  • 환경변수 .env에는 사용자들에게 보여주지 말아야할 정보들을 담는다. 보안을 위하여
  • git 저장소에 업로드 하지말자, 보여주지 말아야할 중요한 정보들이 노출될 수 있다.
  • 서버에 파일만 업로드

 

환경변수를 사용하기 위해서는 npm을 설치해야 한다.

npm install dotenv

 

< index.js >

const express = require('express');
const app = express();
const dotenv = require('dotenv');
dotenv.config();

const PORT = process.env.PORT;

app.get('/',(req,res) => {
    console.log(process.env.NAME);
    console.log(process.env.NODE_ENV);
    res.send('Hello World');
})

app.listen(PORT, (req,res) =>{
    console.log(`http://localhost${PORT}`);
})

 

사이트에 접속하면 Hello World 문구가 적히고

콘솔창에 .env에 작성한 NAME과 NODE_ENV에 대한 값이 출력된다.

 

< .env >

#주석
NAME=kdt
NODE_ENV=dev
PORT=8000

 

 

 

package.json 사용

 

pacakge.json에 scripts에 값을 추가하면 해당 내용을 실행했을 때 env에 값을 바꿀 수 있다.

npm install cross-env

node.js 프로젝트에서 운영체제 간 환경변수 설정을 도와주는 모듈

 

< package.json >

"scripts": {
    "start": "cross-env NODE_ENV=development nodemon index",
    "start:prod": "cross-env NODE_ENV=production nodemon index", 
    "test": "echo \"Error: no test specified\" && exit 1"
  },

 

실행하기 위해서는 콘솔창에 npm run start, npm run start:prod 를 입력하면 된다.

 

 

 

반응형