Node.js 應用程式伺服器 AWS OpsWorks 堆疊層 - AWS OpsWorks

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Node.js 應用程式伺服器 AWS OpsWorks 堆疊層

重要

該 AWS OpsWorks Stacks 服務於 2024 年 5 月 26 日終止使用壽命,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載移轉至其他解決方案。如果您對移轉有任何疑問,請透過 AWS Re: post 或透過進AWS 階 Support 與 AWS Support 團隊聯絡。

注意

此 layer 僅適用於 Linux 類型堆疊。

Node.js 應用程式伺服器層是 AWS OpsWorks 堆疊層,可為作為 Node.js 應用程式伺服器的執行個體提供藍圖。 AWS OpsWorks 堆疊也會安裝 Express,因此圖層的執行個體同時支援標準應用程式和 Express 應用程式。

Installation (安裝):Node.js 安裝在 /usr/local/bin/node 中。

Add Layer (新增 Layer) 頁面提供下列組態選項:

Node.js 版本

如需目前所支援版本的清單,請參閱AWS OpsWorks 堆疊作業系統

自訂安全群組

如果您選擇不自動將內建「 AWS OpsWorks 堆疊」安全性群組與圖層建立關聯,就會顯示此設定。您必須指定要和 layer 關聯的安全群組有哪些。如需詳細資訊,請參閱 建立新的堆疊

Elastic Load Balancer

您可以將 Elastic Load Balancing 負載平衡器附加到層的執行個體。

重要

如果您的 Node.js 應用程式使用 SSL,則建議您盡可能停用 SSLv3 來處理 CVE-2015-8027 中所述的漏洞。若要這麼做,您必須將 Node.js version (Node.js 版本) 設定為 0.12.9

部署 Node.js 應用程式

如需如何實作 AWS OpsWorks Stacks 簡單 Node.js 應用程式並將其部署至堆疊的詳細演練,請參閱建立您的第一個 Node.js 堆疊。一般而言, AWS OpsWorks Stacks 的 Node.js 應用程式應該會符合下列條件:

  • 主要檔案必須命名為 server.js 並且位在已部署應用程式的根目錄中。

  • Express 應用程式必須在應用程式的根目錄中包括 package.json 檔案。

  • 根據預設,應用程式必須接聽連接埠 80 (HTTP) 或連接埠 443 (HTTPS)。

    您可以在其他連接埠上偵聽,但 Node.js 應用程式伺服器層的內建安全群組 AWS OpsWorks-NodeJS 應用程式伺服器只允許傳入使用者流量傳輸至連接埠 80、443 和 22 (SSH)。若要允許其他連接埠的輸入使用者流量,請建立具有適當輸入規則的安全性群組,並將其指派給 Node.js 應用程式伺服器層。請勿透過編輯內建安全群組來修改傳入規則。每次建立堆 AWS OpsWorks 疊時,「堆疊」都會以標準設定覆寫內建的安全性群組,因此您所做的任何變更都會遺失。

注意

AWS OpsWorks 堆疊會將 PORT 環境變數設定為 80 (預設值) 或 443 (如果您啟用 SSL),因此您可以使用下列程式碼偵聽要求。

app.listen(process.env.PORT);

如果您將 Node.js 應用程式設定為支援 SSL,則必須指定金鑰和憑證。 AWS OpsWorks 堆疊會將每個應用程式伺服器執行個體的資料做為個別檔案放在/srv/www/app_shortname/shared/config目錄中,如下所示。

  • ssl.crt— SSL 憑證。

  • ssl.key— SSL 金鑰。

  • ssl.ca— 鏈結憑證 (如果已指定)。

您的應用程式可以從這些檔案中取得 SSL 金鑰和憑證。