我将node.js和npm安装到我的centOS 7服务器上.但我对pm2有疑问.其实真正的问题是我没有linux的经验,我不知道如何改变路径.这是文件夹结构.
* bin
* code
* error_docs
* httpdocs
* lib64
* logs
* tmp
* var
* chat(my node.js folder)
* node_modules
* pm2
* sockjs
* server.js
* dev
* etc
* lib
* local
* sbin
* usr
Run Code Online (Sandbox Code Playgroud)
我通过键入cd chat并安装了pm2 来输入文件夹npm install pm2.
之后,我尝试通过输入pm2 server.js服务器返回"pm2 command not found" 来使用pm2作为我的server.js .我可以使用node.js没有任何问题,但pm2不工作.
我怎么解决这个问题?
num*_*8er 58
全局安装PM2:
以root身份运行:
npm i -g pm2
Run Code Online (Sandbox Code Playgroud)
或者如果用户是sudo-er
sudo npm i -g pm2
Run Code Online (Sandbox Code Playgroud)
然后返回用户(如果是root用户创建的话,则保留在root用户中)并运行它:
pm2 start server.js
Run Code Online (Sandbox Code Playgroud)
Nic*_*cks 10
PM2是Node.js应用程序的进程管理器.PM2基本上管理应用程序(在后台作为服务运行它们).这就是我们使用sudo权限帐户全局安装PM2的方法
sudo npm install -g pm2
Run Code Online (Sandbox Code Playgroud)
-g选项告诉npm全局安装模块,以便它在系统范围内可用.安装完成后,将安装的路径检查为:
whereis pm2
pm2: /opt/node/bin/pm2 /opt/node/lib/node_modules/pm2/bin/pm2
Run Code Online (Sandbox Code Playgroud)
现在,我们需要在启动bash脚本中添加此路径.添加在〜/ .bashrc文件中的任何位置添加以下行.
export PATH=$PATH:/opt/node/lib/node_modules/pm2/bin
Run Code Online (Sandbox Code Playgroud)
现在重新登录或获取bash脚本,如下所示(以便运行bash脚本并设置路径)
source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
现在它应该运行.检查pm2的状态
pm2 status
Run Code Online (Sandbox Code Playgroud)
Hen*_*ren 10
就我而言,我使用 zsh shell 运行 MacOs Big Sur。您需要做的第一件事是获取 npm-global 路径的前缀:
npm config get prefix
Run Code Online (Sandbox Code Playgroud)
然后这将返回类似这样的东西:
/Users/your_user/npm-global
Run Code Online (Sandbox Code Playgroud)
复制此路径,并在末尾添加 /bin -> /Users/your_user/npm-global/bin。然后我们将此路径导出到 bash 配置中。
export PATH=$PATH:/Users/your_user/npm-global/bin
Run Code Online (Sandbox Code Playgroud)
我相信您所有的全局 npm 包现在都可以正常工作了。
| 归档时间: |
|
| 查看次数: |
42717 次 |
| 最近记录: |