使用nvm(Node Version Manager)
NVM允许你安装多个Node.js版本,并可以轻松切换版本。
1. 安装nvm
对于Debian/Ubuntu:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# 或者使用wget
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
对于CentOS/Fedora:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# 或者使用wget
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
2. 使用nvm安装Node.js
安装nvm后,你可以使用以下命令安装Node.js:
nvm install node # 安装最新版本的Node.js
nvm install 18 # 安装特定版本的Node.js,例如版本18
3. 使用nvm切换Node.js版本
nvm use 18 # 切换到版本18
npm使用国内镜像源
npm config set registry https://registry.npmmirror.com/
服务器里安装,只需要安装一次,目前公司的服务器已安装
1.npm i pm2 -g // npm安装
2.pm2 list // 查看是否安装成功,如果不成功看3
3.whereis pm2 // 查看pm2 位置
ln -s /root/.nvm/versions/node/v20.18.3/bin/pm2 /usr/bin/pm2 // 使用 ln -s 挂一下软连接
PS:若安装时太久没有动静,可ctrl+C停止命令,再重新执行,速度可能会快点
项目部署
1.把本地项目打包后的.nuxt文件夹、static文件夹、nuxt.config.js文件、package.json文件)上传到服务器
2.进入项目所在的文件夹,执行 npm install(或者npm i) 安装依赖
测试运行:npm start,可以用ip+端口号进行访问(该操作当你关闭软件时,项目会立即停止运行)
正式部署:pm2 start npm –name “mzt” — run start // (my-nuxt为项目名) 推荐用pm2启动
nginx代理配置:
map $sent_http_content_type $expires {
“text/html” epoch;
“text/html; charset=utf-8” epoch;
default off;
}
server {
listen 80; # the port nginx is listening on
server_name your-domain; # setup your domain here
gzip on;
gzip_types text/plain application/xml text/css application/javascript;
gzip_min_length 1000;
location / {
expires $expires;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 1m;
proxy_connect_timeout 1m;
proxy_pass http://127.0.0.1:3050; # set the address of the Node.js instance here
}
}
注意事项
1. 服务器迁移后,项目需重新安装依赖包(如果之前有则需要先删除再npm install)
2. 权限问题,可通过linux命令行 chmod -R 777 [文件] 来修改权限
3. Pm2 开机自启动项目
3-1 通过pm2 save保存当前进程状态。
3-2 通过pm2 startup [platform]生成开机自启动的命令。(记得查看控制台输 出)
3-3 将步骤2生成的命令,粘贴到控制台进行,搞定。
pm2 删除已部署的项目
在Linux环境下使用PM2(Process Manager 2)来管理Node.js应用程序时,有时候你可能会需要删除已部署的项目。PM2提供了一个简单的方法来停止、删除和重启你的应用程序。以下是删除已部署的Node.js项目的基本步骤:
1. 停止项目
在删除项目之前,首先应该停止该项目的运行。你可以使用以下命令来停止项目:
pm2 stop 项目名或ID
例如,如果你的项目名为myapp,你可以使用:
pm2 stop myapp
或者,如果你知道项目的ID,可以使用:
pm2 stop 0
2. 删除项目
一旦项目被停止,你就可以安全地删除它了。使用以下命令来删除项目:
pm2 delete 项目名或ID
例如,继续使用myapp为例:
pm2 delete myapp
或者使用ID:
pm2 delete 0
3. 清理PM2的进程列表(可选)
如果你想要彻底清除PM2的进程列表中的所有痕迹,包括日志文件和配置文件,你可以使用:
pm2 unstartup # 取消开机自启设置(如果你之前设置了的话)
pm2 save # 保存当前进程状态到ecosystem.config.js(如果你使用的是PM2的配置文件)
pm2 reset # 重置PM2的状态,这将删除所有进程和日志文件,但不删除配置文件。
4. 确认项目已被删除(可选)
为了确认项目是否真的被删除,你可以列出所有当前运行的PM2进程:
pm2 list
你应该看不到你的项目出现在列表中。
5. 手动删除日志文件(可选)
如果你想要手动删除与你的项目相关的日志文件,你可以找到PM2的日志目录(通常是~/.pm2/logs),然后手动删除相关的日志文件。例如:
rm -rf ~/.pm2/logs/myapp*
注意:
确保在执行删除操作前,你已经保存了所有重要的数据或配置。
使用pm2 delete命令时,请确保你有足够的权限(通常需要root权限或sudo)。如果遇到权限问题,可以尝试在命令前加上sudo。
在生产环境中操作时,建议先在测试环境验证命令的正确性。