node應用cross-env參數設置及PM2參數設置方法

參數設置node

在node開發過程當中,咱們常用npm run dev/build 命令shell

可是有時咱們須要設置一些參數,在window系統中須要手動安裝 cross-envnpm

npm i cross-env -D

 

而後在script中添加參數設置 數組

"scripts": {
  "test": "cross-env NODE_ENV=development node index.js"
}

這樣咱們就能夠隨意設置咱們須要的參數了。服務器

 

使用PM2,爲應用開啓一個長進程app

在線上 咱們在命令行窗口,使用nmp run build啓動咱們項目後 ,當窗口關閉後,咱們的應用進程也隨之關閉了。測試

這時候,咱們須要引入PM2 。在咱們的雲服務器上全局安裝ui

npm install pm2 -g

 

這時再用pm2啓動應用。這樣即便關閉了我當前的xshell窗口。個人應用仍是能夠正常訪問的。spa

pm2 start/stop index.js

 

或者在script中設置命令行

"scripts": {
  "test": "cross-env NODE_ENV=development node index.js"
 "build": "pm2 start/stop index.js"
}

 

PM2啓動應用時的參數設置

在根目錄新建ecosystem.config.js配置文件

module.exports = {
  apps: [
    {
      // 生產環境
      name: "prod",
      // 項目啓動入口文件
      script: "./index.js",
      // 項目環境變量
      env: {
        "NODE_ENV": "production"
      }
    },
  {
      // 測試環境
      name: "test", // 項目啓動入口文件 script: "./index.js", // 項目環境變量  env: { "NODE_ENV": "test" } }
] }

 

固然這裏你除了設置生產環境配置,測試和預發環境也是相同配形式,經過apps這個數組接受不一樣環境的配置對象。

再在咱們的script中配置

"scripts": {
    "test": "cross-env NODE_ENV=development node index.js",
    "dev": "supervisor --harmony index.js",
    "build": "pm2 start ecosystem.config.js --only prod --watch" // 這裏我只在線上使用了PM2
  },

 

這樣咱們當npm run test 或者 npm run build時

咱們在node環境中經過 process.env.NODE_ENV 來獲取咱們的NODE_ENV參數。

相關文章
相關標籤/搜索