dotenv with import

x·2022년 5월 25일
0

환경

handler.ts

import serverless from 'serverless-http';
import express from 'express';
import dotenv from 'dotenv';
dotenv.config({ path: `./.env.${String(process.env.NODE_ENV)}` });
console.log(String(process.env.NODE_ENV), String(process.env.TEST));

const app = express();

app.get('/', (_req, res) => {
  return res.status(200).json({
    message: 'Hello from root!',
  });
});

app.get('/hello', (_req, res) => {
  return res.status(200).json({
    message: 'Hello from path!',
  });
});

app.use((_req, res) => {
  return res.status(404).json({
    error: 'Not Found',
  });
});

// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
module.exports.handler = serverless(app);

package.json

  "scripts": {
    "deploy:local": "NODE_ENV=local sls offline start"
  }

package.json에서 배포 시 NODE_ENV를 local로 지정해준다.
handler.ts에서는 dotenv를 import하고 환경에 따라 .env파일을 읽는다.

https://www.npmjs.com/package/dotenv

0개의 댓글