inflearn logo
강의

Khóa học

Chia sẻ kiến thức

NestJS phụ trợ vững chắc, từ cơ bản đến nâng cao

환경변수가 왜 제대로 안먹힌것같죠 ?

608

corepen

8 câu hỏi đã được viết

1

몽고디비 URI가 제대로 들어갔는지 확인하기위해 환경변수를 입력하고
서버를 실행해서 아래와 같이 콘솔을 입력후 , 콘솔창을 확인해 봤을때 undefined가 뜹니다.
하지만 콘솔로그에 process.env 만 입력하였을때는
```
mongo : { GJS_DEBUG_TOPICS: 'JS ERROR;JS LOG', LESSOPEN: '| /usr/bin/lesspipe %s', LANGUAGE: 'ko:en', USER: 'corepen', LC_TIME: 'ko_KR.UTF-8', npm_config_user_agent: 'npm/7.4.2 node/v14.16.1 linux x64', SSH_AGENT_PID: '2049', XDG_SESSION_TYPE: 'x11',
....
```
아래와같이 나옵니다. 분명 환경변수를 최상단에 위치시켰는데 결과가 왜 다를까요 ?
import 를 해오지 못해서 그런걸까요 ? 깃헙에있는
'05 NestJS 실전 프로젝트/02, 03' 에서 02,03 폴더안에 .env파일을 만들어서 환경변수를 지정해줬습니다.
console.log("mongo :", process.env.MONGODB_URI)
@Module({
imports: [
ConfigModule.forRoot(),
MongooseModule.forRoot(process.env.MONGODB_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
useFindAndModify: false,
}),
CatsModule,
],
controllers: [AppController],
providers: [AppService],
})

mongodb nodejs express ssr NestJS

Câu trả lời 2

0

corepen

네 안녕하세요.  먼저 해당 코드 상단에 이렇게 config를 받아왔구요.  

import { ConfigModule } from '@nestjs/config';

 아래는 main.ts 입니다. 

import { ValidationPipe } from '@nestjs/common';
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import { HttpExceptionFilter } from './common/exceptions/http-exception.filter';

async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.useGlobalPipes(new ValidationPipe()); // class validation 사용
app.useGlobalFilters(new HttpExceptionFilter());
const PORT = process.env.PORT;
await app.listen(PORT);
}

bootstrap();

 아래는 pakage.json입니다. 

"dependencies": {
"@nestjs/common": "^7.6.15",
"@nestjs/config": "^0.6.3",
"@nestjs/core": "^7.6.15",
"@nestjs/mongoose": "^7.2.4",
"@nestjs/platform-express": "^7.6.15",
"bcrypt": "^5.0.1",
"class-transformer": "^0.4.0",
"class-validator": "^0.13.1",
"mongoose": "^5.12.15",
"reflect-metadata": "^0.1.13",
"rimraf": "^3.0.2",
"rxjs": "^6.6.6"
},
"devDependencies": {
"@nestjs/cli": "^7.6.0",
"@nestjs/schematics": "^7.3.0",
"@nestjs/testing": "^7.6.15",
"@types/express": "^4.17.11",
"@types/jest": "^26.0.22",
"@types/node": "^14.14.36",
"@types/supertest": "^2.0.10",
"@typescript-eslint/eslint-plugin": "^4.19.0",
"@typescript-eslint/parser": "^4.19.0",
"eslint": "^7.22.0",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-prettier": "^3.3.1",
"jest": "^26.6.3",
"prettier": "^2.2.1",
"supertest": "^6.1.3",
"ts-jest": "^26.5.4",
"ts-loader": "^8.0.18",
"ts-node": "^9.1.1",
"tsconfig-paths": "^3.9.0",
"typescript": "^4.2.3"
},

nestJS/config가 있다는게 확인이 되고..

```

MONGODB_URI = "mongodb+srv://<아이디>:<비밀번호>@nestcluster.wwcon.mongodb.net/myFirstDatabase?retryWrites=true&w=majority"

PORT = 3000

MODE='dev'

```

.env 파일입니다. 

0

amamov

안녕하세요! :)

혹시 config 설정을 해주셨나요???

만일 그대로 했는데 안되셨다면 MongoURL 부분을 가리고 환경변수 .env와 main.ts, package.json 사진을 보여 주시면 추가적인 도움을 드리겠습니다. 🙂

프로젝트 환경 세팅할 때 최신 노드 버젼을 사용하시는 분들은 참고하셔도 좋을 것 같아요~

2

80

1

DTO에 대한 질문

1

87

2

백엔드 MVC에서 View의 역할은 무엇인가요?

1

93

2

추가 업데이트 관련 건

0

90

2

nest js 버전문제

0

79

2

mongdb 스키마 공식 문서와 형태가 다른 이유 궁금합니다.

0

103

1

라인 끝에 에러 표시(eslint) 때문에 구글 찾아 보니.

0

74

1

전체 고양이 조회 라우터 중 error.message 오류

0

67

1

캡슐화 추가 설명 중 단일책임원칙 관련 질문

0

104

0

42강 고양이끼리 소통 댓글 구현 중 Schema hasn't been registered for model 'comments' 에러 해결

0

82

1

채팅 이슈

0

133

1

모듈이 더 이상 지원하지 않는답니다

0

206

1

오류가 있습니다

0

106

1

import 에서 오류가 납니다

0

127

1

이런 오류가 나옵니다

0

100

1

에러가 발생합니다

0

109

1

프론트 에러 뜨는데 수정 안해주시나요

0

156

1

emit() broadcast.emit() 질문있습니다

0

101

1

서버연결이 안됩니다.

1

403

1

[PM2][ERROR] Command not found

0

520

1

S3에 업로드까지는 성공했는데 사진이 나오지 않습니다.

0

248

1

error_code : Property 'user' does not exist on type 'Request<ParamsDictionary, any, any, ParsedQs, Record<string, any>>'.ts(2339)

0

601

1

jwt를 따로 연습하고 있는데 env를 못읽는 것 같습니다.

0

322

2

Ec2로 안하시는 이유가 있을까요?

0

343

1