OS X에서 NODE_ENV를 운영/개발로 설정하는 방법
express.js 환경에서 사용합니다.좋은 의견이라도 있나?
앱을 실행하기 전에 콘솔에서 실행할 수 있습니다.
export NODE_ENV=production
또는 윈도우에 있는 경우 다음과 같이 시도해 볼 수 있습니다.
SET NODE_ENV=production
PowerShell의 경우:
$env:NODE_ENV="production"
또는 다음과 같이 앱을 실행할 수 있습니다.
NODE_ENV=production node app.js
js 파일에서도 설정할 수 있습니다.
process.env.NODE_ENV = 'production';
그러나 서버에서 VIM을 열어 실제 가동 상태로 변경하는 것은 쉽지 않기 때문에 런타임 파일에서는 사용하지 않는 것이 좋습니다.디렉터리에 config.json 파일을 만들 수 있으며, 앱이 실행될 때마다 해당 파일을 읽고 구성을 설정할 수 있습니다.
포장되어 있습니다.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 명령을 다시 입력할 필요가 없으며 원하는 노드(forever, pm2)를 사용할 수 있습니다.
heroku의 경우:
heroku config:set NODE_ENV="production"
실제로는 디폴트입니다.
Windows, Mac, Linux 중 어느 쪽에서 스크립트를 실행하고 있는지 걱정할 필요가 없도록 크로스 엔비 패키지를 설치합니다.그러면 스크립트를 다음과 같이 쉽게 사용할 수 있습니다.
"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"
}
이 패키지 개발자들에게 엄청난 소품들이에요.
npm install --save-dev cross-env
heroku config:set NODE_ENV="production"
Windows Powershell 의 경우는, 이 커맨드를 사용합니다.
$env:NODE_ENV="production" ; node app.js
OSX를 추가할 것을 합니다.export NODE_ENV=development
your ~/.bash_profile
"/"/"~/.bashrc
"/"/"~/.profile
.
는 개인적으로 그 을 제 my인 my my my my my my my my my my my에 추가합니다.~/.bashrc
에 '이렇게'를 ~/.bash_profile
~/.profile
파일 내용을 가져오므로 환경 간에 일관성이 유지됩니다.
이러한 추가 작업을 수행한 후 터미널을 재시작하여 설정을 선택하십시오.
여러 환경을 구축하기 위해서는 이전의 모든 응답(NODE_ENV 파라미터 및 내보내기)이 필요하지만, 저는 아무것도 설치할 필요 없이 매우 간단한 방법을 사용합니다.당신의 소포 안에.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"
}
...
리고,를 사용하는 대신 을을 instead instead instead instead를 사용하여 앱을 합니다.npm start
npm run script-prod
에서는 현재 할 수 .process.env.NODE_ENV
.
보일라.
Windows CMD ->set NODE_ENV=production
Windows Powershell ->$env:NODE_ENV="production"
MAC ->export NODE_ENV=production
창문에 있다면.오른쪽 폴더에서 cmd를 연 다음 먼저 엽니다.
set node_env={your env name here}
Enter 키를 누르면 노드를 시작할 수 있습니다.
node app.js
env 설정으로 시작합니다.
어플리케이션에서 웹 팩을 사용하고 있는 경우는, 다음의 방법으로 간단하게 설정할 수 있습니다.DefinePlugin
...
그래서 네 안에plugin
섹션, NODE_ENV를 다음과 같이 설정합니다.production
:
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': '"production"',
})
]
npm start --mode production
npm start --mode development
process.env를 사용합니다.NODE_ENV = '실가동'
Daniel은 올바른 도입(설정 후 잊기) 프로세스를 위한 더 나은 접근법인 훌륭한 답변을 가지고 있습니다.
익스프레스를 이용하시는 분들을 위해.grunt-express-server를 사용할 수도 있습니다.https://www.npmjs.org/package/grunt-express-server
다음과 같이 환경별로 실행할 수 있습니다.
NODE_ENV=production npm run start
Docker 솔루션은 어디에도 명확하게 언급되어 있지 않습니다.이 솔루션이 도움이 되었으면 합니다.
도커 파일:
FROM node:16.11-alpine3.14 AS production
ARG NODE_ENV=production
ENV NODE_ENV=${NODE_ENV}
...
언급URL : https://stackoverflow.com/questions/9198310/how-to-set-node-env-to-production-development-in-os-x
'programing' 카테고리의 다른 글
phpMyAdmin 행을 편집 또는 삭제하려고 하면 오류 #1064가 나타납니다. (0) | 2022.11.01 |
---|---|
Lombok이 추가했지만 Intellij IDEA에서 getters와 setters가 인식되지 않음 (0) | 2022.11.01 |
'SQLSTATE[22007]' 메시지와 함께 'PDOException' 예외 발생:잘못된 날짜/시간 형식: 1366 잘못된 문자열 값 (0) | 2022.11.01 |
Java 어플리케이션마다 1개의 JVM이 있습니까? (0) | 2022.10.23 |
JavaScript 문자열에서 HTML 태그를 삭제하는 방법 (0) | 2022.10.23 |