OS X에서 NODE_ENV를 생산 / 개발로 설정하는 방법
express.js 환경에서 사용하십시오. 어떤 제안?
앱을 실행하기 전에 콘솔에서이 작업을 수행 할 수 있습니다.
export NODE_ENV=production
또는 창문에 있다면 이것을 시도 할 수 있습니다.
SET NODE_ENV=production
또는 다음과 같이 앱을 실행할 수 있습니다.
NODE_ENV=production node app.js
js 파일에서 설정할 수도 있습니다.
process.env.NODE_ENV = 'production';
그러나 서버에서 VIM을 열고 프로덕션으로 변경하는 것은 쉽지 않기 때문에 런타임 파일에서 수행하지 않는 것이 좋습니다. 디렉토리에 config.json 파일을 만들 수 있으며 앱이 실행될 때마다 파일을 읽고 구성을 설정합니다.
package.json에서 :
{
...
"scripts": {
"start": "NODE_ENV=production node ./app"
}
...
}
그런 다음 터미널에서 실행하십시오.
npm start
.env
아직 여기에 언급 된 사람이 없습니까? 메이크업 .env
후, 앱 루트에 파일을 require('dotenv').config()
하고 값을 읽습니다. 쉽게 변경하고 쉽게 읽을 수있는 크로스 플랫폼.
https://www.npmjs.com/package/dotenv
export NODE_ENV=production
나쁜 해결책이며 다시 시작한 후에 사라집니다.
해당 변수에 대해 더 이상 걱정하지 않으려면이 파일에 추가하십시오.
/etc/environment
내보내기 구문을 사용하지 말고 작성하십시오 (일부 내용이 이미있는 경우 새 줄로 작성).
NODE_ENV=production
다시 시작한 후에 작동합니다. 언제 어디서나 export NODE_ENV = production 명령 을 다시 입력하지 않아도되고 원하는 노드 만 사용하면됩니다. pm2 ...
헤 로쿠의 경우 :
heroku config:set NODE_ENV="production"
실제로 기본값입니다.
heroku config:set NODE_ENV="production"
Windows, Mac 또는 Linux에서 스크립트를 실행 중인지 걱정하지 않으려면 cross-env 패키지를 설치하십시오. 그러면 다음과 같이 스크립트를 쉽게 사용할 수 있습니다.
"scripts": {
"start-dev": "cross-env NODE_ENV=development nodemon --exec babel-node -- src/index.js",
"start-prod": "cross-env NODE_ENV=production nodemon --exec babel-node -- src/index.js"
}
이 패키지의 개발자에게 대규모 소품.
Windows Powershell의 경우이 명령을 사용하십시오.
$env:NODE_ENV="production" ; node app.js
OSX에서는 and / or 및 / 또는에 추가 export NODE_ENV=development
하는 것이 좋습니다 .~/.bash_profile
~/.bashrc
~/.profile
개인적으로 해당 항목을 내 항목에 추가 ~/.bashrc
한 다음 ~/.bash_profile
~/.profile
해당 파일의 내용을 가져 오므로 환경간에 일관성이 있습니다.
이러한 추가 작업을 수행 한 후 터미널을 다시 시작하여 설정을 선택하십시오.
애플리케이션에서 웹팩 을 사용하는 경우 웹팩 을 사용하여 간단히 웹팩 을 설정할 수 있습니다 DefinePlugin
.
따라서 plugin
섹션에서 NODE_ENV 를 production
다음으로 설정하십시오 .
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': '"production"',
})
]
당신이 창문에 있다면. 오른쪽 폴더에서 cmd를 연 다음 먼저
set node_env={your env name here}
Enter 키를 누르면 노드를 시작할 수 있습니다
node app.js
그것은 당신의 환경 설정으로 시작됩니다
Daniel은 올바른 배치 (설정 및 잊어 버림) 프로세스를위한 더 나은 접근 방식 인 환상적인 답변을 제공합니다.
급행을 사용하는 사람들을 위해. 환상적인 서버를 사용할 수도 있습니다. https://www.npmjs.org/package/grunt-express-server
여러 환경을 유지하려면 이전에 모든 답변이 필요하지만 (NODE_ENV 매개 변수 및 내보내기) 아무것도 설치하지 않고도 매우 간단한 방법을 사용합니다. package.json에 필요한 각 환경에 대한 스크립트를 다음과 같이 넣으십시오.
...
"scripts": {
"start-dev": "export NODE_ENV=dev && ts-node-dev --respawn --transpileOnly ./src/app.ts",
"start-prod": "export NODE_ENV=prod && ts-node-dev --respawn --transpileOnly ./src/app.ts"
}
...
그런 다음 npm start
use 를 사용 하는 대신 앱을 시작하십시오 npm run script-prod
.
코드에서을 사용하여 현재 환경에 액세스 할 수 있습니다 process.env.NODE_ENV
.
짜잔
참고 URL : https://stackoverflow.com/questions/9198310/how-to-set-node-env-to-production-development-in-os-x
'Programing' 카테고리의 다른 글
안드로이드의 목적은 무엇입니까 (0) | 2020.03.18 |
---|---|
이진 트리의 응용 프로그램은 무엇입니까? (0) | 2020.03.18 |
DateTime을 VarChar로 변환하는 방법 (0) | 2020.03.18 |
게터와 세터를 사용하는 파이썬적인 방법은 무엇입니까? (0) | 2020.03.18 |
JavaScript로 객체 배열에서 고유 한 값을 얻는 방법은 무엇입니까? (0) | 2020.03.18 |