gpt4 book ai didi

node.js - 创建 cron 以重启 pm2 实例失败

转载 作者:太空宇宙 更新时间:2023-11-04 12:16:38 26 4
gpt4 key购买 nike

我在使用 cron 选项卡重新启动我的实例时遇到了问题

#!/usr/bin/node
*15 * * * * /usr/bin/node /usr/bin/pm2 restart 4

但我的问题是我有两个 pm2 守护进程。我想要的是/opt.pm2 所以每次我想使用 pm2 我都需要使用这个命令

export PM2_HOME="/opt/.pm2"

我需要知道如何在我的 crontab 中传递这个 env 变量以重启实例 4,因为在/usr/bin/pm2 中我没有让我的应用程序运行明白吗?

但是我得到了错误

From root@ip120.ip-46-105-248.eu  Sun Nov 12 11:23:01 2017
Return-Path: <root@ip120.ip-46-105-248.eu>
X-Original-To: root
Delivered-To: root@ip120.ip-46-105-248.eu
Received: by ip120.ip-46-105-248.eu (Postfix, from userid 0)
id E84CA100921; Sun, 12 Nov 2017 11:23:01 +0000 (WET)
From: "(Cron Daemon)" <root@ip120.ip-46-105-248.eu>
To: root@ip120.ip-46-105-248.eu
Subject: Cron <root@ip120> /usr/bin/node /usr/bin/pm2 restart 4
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <XDG_SESSION_ID=4300>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
X-Cron-Env: <LANG=en_US.UTF-8>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <20171112112301.E84CA100921@ip120.ip-46-105-248.eu>
Date: Sun, 12 Nov 2017 11:23:01 +0000 (WET)

Use --update-env to update environment variables
[PM2] Applying action restartProcessId on app [4](ids: 4)
[PM2][ERROR] Process 4 not found
┌──────────┬────┬──────┬─────┬────────┬─────────┬────────┬─────┬─────┬──────────┐
│ App name │ id │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ watching │
└──────────┴────┴──────┴─────┴────────┴─────────┴────────┴─────┴─────┴──────────┘
Module activated
┌───────────────┬─────────┬────────────┬────────┬─────────┬─────┬─────────────┐
│ Module │ version │ target PID │ status │ restart │ cpu │ memory │
├───────────────┼─────────┼────────────┼────────┼─────────┼─────┼─────────────┤
│ pm2-logrotate │ 2.2.0 │ N/A │ online │ 0 │ 0% │ 91.223 MB │
└───────────────┴─────────┴────────────┴────────┴─────────┴─────┴─────────────┘
Use `pm2 show <id|name>` to get more details about an app

最佳答案

如果除环境变量外所有其他条件都相同,您可以将 crontab 命令设置为 env PM2_HOME="/opt/.pm2"/usr/bin/node/usr/bin/pm2 restart 4。或者 /usr/bin/env 而不是 env

如果您没有通过这种方式找到成功,您可以编写一个小的 shell 脚本,它只导出 PM2_HOME 值并重新启动 pm2。然后把这个shell脚本作为cron命令。

关于node.js - 创建 cron 以重启 pm2 实例失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47248328/

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