gpt4 book ai didi

meteor - PM2 + Meteor 不工作

转载 作者:行者123 更新时间:2023-12-04 16:42:08 25 4
gpt4 key购买 nike

尝试运行时出现错误:

~/projects/test-app 
/usr/local/bin/meteor:3
# This is the script that we install somewhere in your $PATH (as "meteor")

这是我运行的命令:

pm2 start meteor-pm2.json

这里是 meteor-pm2.json:

{
"name" : "test-app",
"script" : "/usr/local/bin/meteor",
"MAIL_URL":"smtp://yourmail_configuration_here",
"MONGO_URL":"mongodb://localhost:27017/meteor",
"ROOT_URL":"https://www.mysite.com/",
"PORT":"3000",
"out_file":"/home/josh/logs/app.log",
"error_file":"/home/josh/logs/err.log"
}

我也试试这个:猫开始

#!/bin/bash

MONGO_URL="mongodb://localhost:27017/meteor"
PORT=3000
ROOT_URL="https://www.mysite.com/"

/usr/local/bin/meteor

然后我运行它:

pm2 start ./start -x interpreter bash

我得到:

/usr/local/bin/meteor
^
ReferenceError: usr is not defined

当我通过添加导出修改 bash 脚本时:

#!/bin/bash

export MONGO_URL="mongodb://localhost:27017/meteor"
export PORT=3000
export ROOT_URL="https://www.mysite.com/"

/usr/local/bin/meteor

我得到:

export - SyntaxError: Unexpected reserved word

知道我做错了什么吗?pm2 是否试图在它自己不允许使用导出的特殊脚本解释器中运行 bash 脚本?

最佳答案

我相信这个 process.json 语法更正确:

{
"apps": [
{
"name": "myAppName",
"script": "./bundle/main.js",
"log_date_format": "YYYY-MM-DD",
"exec_mode": "fork_mode",
"env": {
"PORT": 3000,
"MONGO_URL": "mongodb://127.0.0.1/meteor",
"ROOT_URL": "https://myapp.example.com/",
"BIND_IP": "127.0.0.1"
}
}
]
}

然后我使用 run.sh 启动它,其中包含:

#!/bin/sh

#
# This shell script starts the actual
# app in the production environtment.
#

pm2 start process.json -i max # Enable load-balancer and cluster features

注意:BIND_IP 环境变量用于更改默认值 (0.0.0.0)。 0.0.0.0 将使应用程序可以在 ssl 代理层周围访问(如果您将 SSL/TLS 与 nginx 或其他一些 Web 服务器一起使用,并且 BIND_IP 设置为 0.0.0.0,那么几乎任何人都可以通过 http://myapp.example.com:3000 在周围访问它加密层,除非您在 Web 服务器的配置中阻止该端口)。

关于meteor - PM2 + Meteor 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23115812/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com