本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Elastic Beanstalk Linux 平台
Elastic Beanstalk Linux 平台提供大量立即可用的功能。您可以透過多種方式擴充平台以支援您的應用程式。如需詳細資訊,請參閱擴充 Elastic Beanstalk Linux 平台。
Elastic Beanstalk 支援的大多數平台均以 Linux 作業系統為基礎。具體而言,這些平台是以 提供的 Linux 發行版本 Amazon Linux 為基礎 AWS。Elastic Beanstalk Linux 平台使用 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體,而這些執行個體執行 Amazon Linux。
主題
支援的 Amazon Linux 版本
AWS Elastic Beanstalk 支援以 Amazon Linux 2 和 Amazon Linux 2023 為基礎的平台。
如需 Amazon Linux 2 和 Amazon Linux 2023 的詳細資訊,請參閱下列內容:
-
Amazon EC2 使用者指南中的 Amazon Linux Amazon EC2 Linux。
-
Amazon Linux 2023 –《Amazon Linux 2023 使用者指南》中的什麼是 Amazon Linux 2023?
如需支援平台版本的詳細資訊,請參閱支援 Elastic Beanstalk 的平台。
注意
您可以將應用程式從 Elastic Beanstalk AL1 或 AL2 平台分支遷移到同等的 AL2023 平台分支。如需詳細資訊,請參閱將您的 Elastic Beanstalk Linux 應用程式遷移到 Amazon Linux 2023 或 Amazon Linux 2。
Amazon Linux 2023
AWS 於 2023 年 3 月宣布 Amazon Linux 2023 正式上市
Elastic Beanstalk Amazon Linux 2 和 Amazon Linux 2023 平台之間具有高度相容性。雖然有部分差異需要注意:
-
執行個體中繼資料服務版本 1 (IMDSv1) – AL2023 平台上的 DisableIMDSv1 選項設定預設為
true。AL2 平台上的預設值為false。 -
pkg-repo 執行個體工具 — pkg-repo 工具不適用於在 AL2023 平台上執行的環境。不過,您仍可手動將套件和作業系統更新套用至 AL2023 執行個體。如需詳細資訊,請參閱《Amazon Linux 2023 使用者指南》中的管理套件和作業系統更新。
-
Apache HTTPd 組態 — AL2023 平台的 Apache
httpd.conf檔案具有部分與 AL2 不同的組態設定:-
在預設情況下,拒絕存取伺服器的整個檔案系統。Apache 網站安全性提示
頁面上的依預設保護伺服器檔案,提供了對此類設定的說明。 -
拒絕在所有目錄中設定
.htaccess的存取權,特別啟用的目錄除外。Apache 網站安全性提示頁面上的保護系統設定,提供了對此設定的說明。Apache HTTP 伺服器教學課程:.htaccess 檔案 頁面指出,這項設定可能有助於改善效能。 -
拒絕存取具有名稱模式
.ht*的檔案。此設定可防止 Web 用戶端檢視.htaccess和.htpasswd檔案。
您可以針對您的環境變更上述任何組態設定。如需詳細資訊,請參閱設定 Apache HTTPD。
-
-
多行環境變數支援 – AL2023 平台支援系統化服務組態中環境變數和秘密的多行值。Amazon Linux 2 平台不支援多行環境變數值。此增強功能可讓您在 AL2023 平台上使用多行秘密和組態值。如需使用環境變數和秘密的詳細資訊,請參閱 Amazon Linux 2 環境變數中的多行值。
-
CloudWatch 自訂日誌轉送 – 已取代的 CloudWatch Logs 代理程式 (
awslogs套件) 不適用於 AL2023 平台。如果您有安裝和使用已棄用awslogs代理程式的自訂日誌轉送組態,則必須更新您的組態檔案,以便在從 Amazon Linux 2 遷移至 AL2023 時使用統一的 CloudWatch 代理程式。如需詳細資訊,請參閱自訂日誌檔串流。
平台特定差異
除了基本作業系統差異之外,Amazon Linux 2 和 AL2023 執行期平台之間也有平台特定的差異:
-
.NET 平台分支 – Amazon Linux 2 和 AL2023 之間的 .NET 平台分支策略不同。在 Amazon Linux 2 上,.NET Core 平台會在單一平台分支中維護 .NET 主要版本的輪換時段。在 AL2023 上,每個平台分支會固定到特定的 .NET 主要版本 (例如 .NET 9、.NET 10)。
如果您部署與架構相關的應用程式 (依賴平台安裝的 .NET 執行期的應用程式),您必須選取符合您應用程式目標 .NET 版本的平台分支。如果您部署獨立應用程式 (綁定自己的 .NET 執行期的應用程式),無論應用程式的 .NET 版本為何,您都可以使用任何 AL2023 .NET 平台分支,因為您的應用程式不依賴於平台安裝的執行期。如需詳細資訊,請參閱Linux Elastic Beanstalk 平台上 .NET Core 的綁定應用程式。
-
Node.js 版本選擇 – Amazon Linux 2 上的 Node.js 平台支援在您的應用程式
package.json檔案中指定 Node.js 版本。AL2023 上的 Node.js 平台不支援此功能。您必須使用平台分支提供的預設 Node.js 版本。如需 Node.js 版本管理的詳細資訊,請參閱 在 Elastic Beanstalk 上設定應用程式的相依性。 -
Ruby Puma 伺服器版本 – Amazon Linux 2 上的 Ruby 平台會忽略應用程式
Gemfile.lock檔案中指定的 Puma 版本,並使用平台預設的 Puma 版本。AL2023 上的 Ruby 平台會遵守 中指定的 Puma 版本,Gemfile.lock如果有的話。如果未指定版本,平台會安裝平台預設的 Puma 版本。 -
PHP 套件可用性 – Amazon Linux 2 PHP 平台上提供的某些套件不適用於 AL2023 PHP 平台:
-
MySQL 用戶端套件 –
mysql和mysql-devel命令列用戶端套件未安裝在 AL2023 PHP 平台上。如果您的應用程式需要 MySQL 資料庫連線,請使用 PHPmysqli或pdo_mysql擴充功能,這兩個平台皆可使用。 -
Compass 和 Ruby 工具 – Compass CSS 架構支援的
ruby-devel和rubygems套件不會安裝在 AL2023 PHP 平台上。Compass 已棄用。請考慮使用現代 CSS 預先處理工具做為替代方案。
-
-
Go 版本控制工具 – Bazaar 版本控制系統 (
bzr) 不適用於 AL2023 Go 平台。Bazaar 已棄用,不包含在 AL2023 套件儲存庫中。請改用 Git、Mercurial 或 Subversion 進行版本控制,所有這些都可以在 AL2023 Go 平台上使用。
Elastic Beanstalk Linux 平台的清單
以下清單列出 Elastic Beanstalk 針對不同程式設計語言和 Docker 容器支援的 Linux 平台。Elastic Beanstalk 為以 Amazon Linux 2 和 Amazon Linux 2023 為基礎的平台提供所有以下支援。如需有關平台的詳細資訊,請選取相應的連結。