Heroku:「heroku ps:exec」和「heroku run bash」有什么区别?

4
heroku ps:execheroku run bash有什么区别?我只是想了解概念。两者似乎都在建立与远程容器/ dyno的SSH隧道。那么为什么heroku ps:exec在第一次使用时需要重启dyno? 由于heroku ps:exec使用默认的shell,所以这个命令更通用,那么需要配置/安装什么呢?
1个回答

9

heroku run bash 创建一个独立的会话(与任何特定进程无关),其中包含您的应用程序代码,并提供一个bash会话。这对于运行一次性任务(例如数据库迁移)非常有帮助,也可用于调试需要查看文件系统的问题。

heroku ps:exec 通道到作为您组成部分已经在运行的dyno。例如,如果您有5个web dyno,则可以直接通道到web.3。这在动态表现出问题(例如内存压力或高负载)的情况下非常有用。能够连接到有问题的Dyno对于调试非常有用。 您还应注意,在heroku ps:exec会话中未设置配置变量(即在Heroku设置选项卡上设置的环境变量)。

我无法确定为什么需要重新启动,但我想某些配置需要更改以启用与已在舰队中运行的dyno的连接。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接