本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Elastic Beanstalk 上的 Procfile 設定應用程式程序。
欲指定啟動 Ruby 應用程式的命令,請於原始碼套件的根目錄,納入名為 Procfile
的檔案。
注意
Elastic Beanstalk 不支援 Amazon Linux AMI Ruby 平台分支 (舊版 Amazon Linux 2) 上的此功能。含有 with Puma 或 with Passenger 名稱的平台分支,不論其 Ruby 版本為何,都會優先於 Amazon Linux 2 且不支援 Procfile
功能。
如需寫入和使用 的詳細資訊Procfile
,請參閱 Buildfile 和 Procfile。
當您不提供 時Procfile
,Elastic Beanstalk 會產生預設 Procfile
。如果您的 Gemfile
包含 Puma,Elastic Beanstalk 會假設您想要使用提供的 Puma 版本,並產生下列預設 Procfile
。
web: bundle exec puma -C /opt/elasticbeanstalk/config/private/pumaconf.rb
如果您的 Gemfile
不包含 Puma,Elastic Beanstalk 會假設您正在使用預先安裝的 Puma 應用程式伺服器,並產生下列預設 Procfile
。在 Amazon Linux 2 Ruby 平台分支上,Procfile
如果您不提供 ,Elastic Beanstalk 一律會產生下列預設值Procfile
。
web: puma -C /opt/elasticbeanstalk/config/private/pumaconf.rb
注意
2024 年 10 月 10 日,最後一個 Ruby Amazon Linux 2 平台分支已淘汰。所有目前支援的 Ruby 平台分支都以 Amazon Linux 2023 為基礎。如需遷移的相關資訊,請參閱 從 Amazon Linux 2 遷移到 Amazon Linux 2023。
如果你想使用 Passenger 應用程式伺服器,請使用下面的範例檔案,設定 Ruby 環境來安裝和使用 Passenger。
-
使用此範例檔案安裝 Passenger。
範例 Gemfile
source 'https://rubygems.org' gem 'passenger'
-
使用此範例檔案,指示 Elastic Beanstalk 啟動 Passenger。
範例 Procfile
web: bundle exec passenger start /var/app/current --socket /var/run/puma/my_app.sock
注意
您不必更改 nginx 代理伺服器組態中的任何內容,即可使用 Passenger。要使用其他應用程序伺服器,您可能需要自訂 nginx 組態,以適當地將請求轉送到應用程式。