我有一個構建在PHP中的Web應用程序平臺,由多個應用程序組成,這些應用程序位於不同的Git存儲庫中。使用Amazon AWS Elastic Beanstalk運行帶有多個git存儲庫的平臺的最佳方式是什麼?
我的理解是,您只能運行帶有一個Git存儲庫的AWS Elastic Beanstalk。
有沒有什麼辦法可以運行一個從多個Git倉庫提供的EB環境?
我有一個構建在PHP中的Web應用程序平臺,由多個應用程序組成,這些應用程序位於不同的Git存儲庫中。使用Amazon AWS Elastic Beanstalk運行帶有多個git存儲庫的平臺的最佳方式是什麼?
我的理解是,您只能運行帶有一個Git存儲庫的AWS Elastic Beanstalk。
有沒有什麼辦法可以運行一個從多個Git倉庫提供的EB環境?
嗯,彈性青苗提供定製環境的配置文件幫助的能力。在這裏看到細節:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html。
如果您需要從不同的github存儲庫中獲取應用程序,可以採用以下方法:使用引導腳本創建配置文件,將從github存儲庫中提取應用程序,而不是通過git aws.push進行發佈。
你知道怎麼做git aws.push?該命令將源代碼推送到aws服務,並將源文件創建爲zip文件,然後將其放在s3存儲桶中。然後調用環境更新並提供s3存儲桶的鏈接。
也可以在本地拉你的項目。然後在.ebextenctions中創建包含源代碼和腳本的zip包,以便部署您的應用程序。
我已經發現,這是不可能的。 AWS只允許一次將一個Git存儲庫部署到EB環境。
Git子模塊可能是問題的答案,但我不同意他們。
幸運的是,AWS提供了另一個半管理解決方案:AWS OpsWorks。
對於任何與我在上面做過的同樣問題掙扎的人,那麼你絕對應該嘗試一下。
老問題,但我回復的人從谷歌磕磕絆絆,像我一樣。
我發現解決此問題的一種方法是構建要自行上傳到AWS Eleastic Beanstalk的.zip軟件包,並配置EB CLI以使用該軟件包。下面是相關片文檔:
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-configuration.html#eb-cli3-artifact
你可以有一個簡單的腳本來運行git存檔(S),結合這一切都成一個.zip文件爲您的項目需要它(或運行任何構建過程你可能需要)然後部署它。