如何使用平台勾點來自訂 Elastic Beanstalk 環境?

1 分的閱讀內容
0

我想使用平台勾點來建立自訂指令碼或其他可執行檔案,以自訂 AWS Elastic Beanstalk 環境。我想在環境中執行的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體上部署這些。

解決方法

**注意:**早於 Amazon Linux 2 的 Amazon Linux Amazon Machine Image (AMI) 平台版本不支援平台勾點。Elastic Beanstalk 會自動授予 Amazon AL2023 和 Amazon Linux 2 的所有平台勾點指令碼執行權限。

設定您的 .platform 目錄

完成下列步驟:

  1. 在應用程式套件的根目錄中,建立一個名為 .platform/hook 的隱藏目錄,用於應用程式部署平台勾點,或建立一個名為 .platform/confighook 的隱藏目錄,用於組態部署平台勾點
  2. 根據平台勾點檔案執行時的執行個體佈建階段,您必須將勾點檔案放入預先建置預先部署部署後的子目錄中。
    如需有關每個子目錄的詳細資訊,請參閱應用程式部署平台勾點
  3. 您的應用程式來源套件必須與下列套件類似:
    ~/workspace/my-application/|-- .platform
        |--hooks
           |--prebuild
              |-- custom-prebuild-script.sh
           |--predeploy
              |-- custom-predeploy-script.sh
           |--postdeploy
              |-- custom-postdeploy-script.sh
    |-- .ebextensions
    |-- index.php
             `-- styles.css

指定勾點檔案

勾點檔案可以是以 #! 列開頭的二進制檔案或指令碼檔案,並包含其解譯器路徑,例如 #!/bin/bash

custom-postdeploy-script.sh 指令碼檔案中的內容範例:

#!/bin/bash
sudo su
cd /var/app/current
echo "Hello from AWS hook" >> 'test.txt'

如需詳細資訊,請參閱如何使用 .ebextensions 自訂 Elastic Beanstalk 環境?

將平台勾點套用至您的應用程式

完成下列步驟:

  1. 建立應用程式來源套件,其中包含先前的平台勾點和組態檔案。
    **注意:**檔案瀏覽器可以隱藏以句點開頭的資料夾,例如 .platform.ebextensions。若要保持資料夾顯示,請在建立應用程式來源套件時,將資料夾包括在應用程式套件的根目錄中。
  2. 部署更新後的 Elastic Beanstalk 應用程式
AWS 官方已更新 8 個月前