shell - AWS ECS 故障 - 运行 shell 脚本来启动程序
问题描述
我正在尝试在亚马逊 ECS 上运行 Docker 映像。我正在使用一个启动 shell 脚本的命令来启动程序:
CMD ["sh","-c", "app/bin/app start; bash"]
为了启动它,因为由于某种原因,当我在后台运行应用程序(elixir/phoenix 应用程序)时,它会立即崩溃,但如果我在前景很好。如果我在本地以这种方式运行它,一切正常,但是当我尝试在集群中运行它时,它会关闭。请帮忙!!
解决方案
出于某种原因,当我在后台运行应用程序(elixir/phoenix 应用程序)时,它立即崩溃了
所以你有一个损坏的应用程序,你正在寻找一个组合来让它看起来有点工作。这根本不是一个可靠的方法。
相反,您应该:
- 让它在后台工作
- 使用
systemctl
或upstart
管理 Erlang VM 在崩溃时的重启
请注意,在哪里编译应用程序很重要。它必须是与生产版本完全相同的架构/容器,具有相同的 Erlang、Elixir、OS 版本,否则没有人保证它会健壮甚至可以正常工作。
推荐阅读
- authentication - 在 Flutter 中找出 Cookie
- symfony - Symfony 4:在注销处理程序上获取用户对象给出匿名字符串
- sql-server - 如何禁用 SQL Server 视图?
- javascript - 清除不同表格上的匹配单元格(无序列)
- c++ - 使用 4 位的自定义数据类型
- node.js - 如何在 maven pom.xml 中集成邮递员集合
- google-maps - 在代号中捕捉缩放/平移移动
- css - 附加到文本的图像
- macos - 如何在 MacOS 中查找东亚字符的默认字体
- rest - 什么对象可以作为 github Graphql api 的起点?