在 Digital Ocean 上使用 pm2 启动多个 Nuxtjs 项目
Start multiple Nuxtjs projects with pm2 on Digital Ocean
我在使用 nginx 代理的 Digital Ocean Droplet 中有几个项目,我想用 pm2 启动所有这些项目,我看到我可以用一个包含名称和脚本的 .json 文件来实现,但它似乎没有用,这就是我所做的:
我的项目目录:
项目 1
项目 2
pm2-apps.json
pm2-apps.json
{
"apps": [
{
"name": "project1",
"script": "./project1/package.json"
},
{
"name": "project2",
"script": "./project2/package.json"
},
]
}
然后我运行
pm2 start pm2-apps.json
我得到
但随后我输入 url,该项目似乎没有正确安装,如果我 运行 每一个与项目文件夹中的 pm2 start npm -- start
分开,它就可以工作。
必须对此进行测试,并发现您可能遇到的几个问题,前提是您已正确设置 nginx。
我必须将文件更改为以下内容:
{
"apps": [
{
"name": "project1",
"cwd": "./project1",
"script": "/usr/bin/npm",
"args": "run dev"
},
{
"name": "project2",
"cwd": "./project2",
"script": "/usr/bin/npm",
"args": "run dev"
}
]
}
奇怪的是 "script": "npm",
和 SIGINT'ing 一样不够,我可以从使用 pm2 monit
中看到
然后在每个项目中,我更改了 nuxt 端口:
nuxt.config.js
...
server: {
port: 3001, // project1
host: '0.0.0.0', // default: localhost
},
...
和
...
server: {
port: 3002, // project2
host: '0.0.0.0', // default: localhost
},
...
然后清除 pm2.. pm2 delete all
然后 运行 从文件夹中:
pm2 start pm2-apps.json
然后两个应用程序都可以正常启动..
我在使用 nginx 代理的 Digital Ocean Droplet 中有几个项目,我想用 pm2 启动所有这些项目,我看到我可以用一个包含名称和脚本的 .json 文件来实现,但它似乎没有用,这就是我所做的:
我的项目目录:
项目 1
项目 2
pm2-apps.json
pm2-apps.json
{
"apps": [
{
"name": "project1",
"script": "./project1/package.json"
},
{
"name": "project2",
"script": "./project2/package.json"
},
]
}
然后我运行
pm2 start pm2-apps.json
我得到
但随后我输入 url,该项目似乎没有正确安装,如果我 运行 每一个与项目文件夹中的 pm2 start npm -- start
分开,它就可以工作。
必须对此进行测试,并发现您可能遇到的几个问题,前提是您已正确设置 nginx。
我必须将文件更改为以下内容:
{
"apps": [
{
"name": "project1",
"cwd": "./project1",
"script": "/usr/bin/npm",
"args": "run dev"
},
{
"name": "project2",
"cwd": "./project2",
"script": "/usr/bin/npm",
"args": "run dev"
}
]
}
奇怪的是 "script": "npm",
和 SIGINT'ing 一样不够,我可以从使用 pm2 monit
然后在每个项目中,我更改了 nuxt 端口:
nuxt.config.js
...
server: {
port: 3001, // project1
host: '0.0.0.0', // default: localhost
},
...
和
...
server: {
port: 3002, // project2
host: '0.0.0.0', // default: localhost
},
...
然后清除 pm2.. pm2 delete all
然后 运行 从文件夹中:
pm2 start pm2-apps.json
然后两个应用程序都可以正常启动..