选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

使用 Procfile 配置应用程序进程

聚焦模式
使用 Procfile 配置应用程序进程 - AWS Elastic Beanstalk

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

如果您的应用程序源包根目录中有多个 JAR 文件,则必须包括 Procfile 文件来告知 Elastic Beanstalk 运行哪个或哪些 JAR。也可以为单 JAR 应用程序提供 Procfile 文件,以配置运行您的应用程序的 Java 虚拟机 (JVM)。

我们建议您始终在源包中将 Procfile 与应用程序一起提供。通过这种方式,您可以精确控制 Elastic Beanstalk 为您的应用程序运行的进程以及这些进程接收的参数。

有关编写和使用 Procfile 的详细信息,请参阅 Buildfile 和 Procfile

例 Procfile
web: java -Xms256m -jar server.jar cache: java -jar mycache.jar web_foo: java -jar other.jar

运行应用程序中的主 JAR 的命令必须命名为 web,而且必须是 Procfile 中列出的第一条命令。nginx 服务器将它从您的环境的负载均衡器接收到的所有 HTTP 请求都转发给此应用程序。

Elastic Beanstalk 假定 Procfile 中的所有条目应始终运行,并自动重新启动 Procfile 中定义的任何终止的应用程序。要运行将会终止并且不应重新启动的命令,请使用 Buildfile

如果您的 Elastic Beanstalk Java SE 环境使用 Amazon Linux AMI 平台版本(在 Amazon Linux 2 之前),请阅读本节中的其他信息。

备注

默认情况下,Elastic Beanstalk 将 nginx 代理配置为通过端口 5000 向您的应用程序转发请求。您可以覆盖默认端口,方法是将 PORT 环境属性设置为主应用程序侦听的端口。

如果您使用 Procfile 运行多个应用程序,则 Amazon Linux AMI 平台版本上的 Elastic Beanstalk 预计每个额外的应用程序都侦听编号比上一个高 100 的端口。Elastic Beanstalk 将可从每个应用程序内访问的 PORT 变量设置为它预计该应用程序运行时使用的端口。您可以通过在应用程序代码中调用 System.getenv("PORT") 访问此变量。

在上面的 Procfile 示例中,web 应用程序侦听端口 5000,cache 侦听端口 5100,而 web_foo 侦听端口 5200。web 通过读取 PORT 变量配置其侦听端口,并在该端口号的基础上加 100 来确定 cache 侦听的端口,从而能够发送其请求。

如果您的 Elastic Beanstalk Java SE 环境使用 Amazon Linux AMI 平台版本(在 Amazon Linux 2 之前),请阅读本节中的其他信息。

备注

默认情况下,Elastic Beanstalk 将 nginx 代理配置为通过端口 5000 向您的应用程序转发请求。您可以覆盖默认端口,方法是将 PORT 环境属性设置为主应用程序侦听的端口。

如果您使用 Procfile 运行多个应用程序,则 Amazon Linux AMI 平台版本上的 Elastic Beanstalk 预计每个额外的应用程序都侦听编号比上一个高 100 的端口。Elastic Beanstalk 将可从每个应用程序内访问的 PORT 变量设置为它预计该应用程序运行时使用的端口。您可以通过在应用程序代码中调用 System.getenv("PORT") 访问此变量。

在上面的 Procfile 示例中,web 应用程序侦听端口 5000,cache 侦听端口 5100,而 web_foo 侦听端口 5200。web 通过读取 PORT 变量配置其侦听端口,并在该端口号的基础上加 100 来确定 cache 侦听的端口,从而能够发送其请求。

默认情况下,Elastic Beanstalk 将 nginx 代理配置为通过端口 5000 向您的应用程序转发请求。您可以覆盖默认端口,方法是将 PORT 环境属性设置为主应用程序侦听的端口。

如果您使用 Procfile 运行多个应用程序,则 Amazon Linux AMI 平台版本上的 Elastic Beanstalk 预计每个额外的应用程序都侦听编号比上一个高 100 的端口。Elastic Beanstalk 将可从每个应用程序内访问的 PORT 变量设置为它预计该应用程序运行时使用的端口。您可以通过在应用程序代码中调用 System.getenv("PORT") 访问此变量。

在上面的 Procfile 示例中,web 应用程序侦听端口 5000,cache 侦听端口 5100,而 web_foo 侦听端口 5200。web 通过读取 PORT 变量配置其侦听端口,并在该端口号的基础上加 100 来确定 cache 侦听的端口,从而能够发送其请求。

下一主题:

代理配置

上一主题:

Buildfile
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。