![](/img/trans.png)
[英]hosting a laravel application in aws elastic beanstalk with rds db instance
[英]How to setup Laravel application in AWS Elastic Beanstalk using external RDS database
我想開始將我的 Laravel 應用程序部署到生產環境中。 為了避免在不久的將來更改 AWS 配置,我決定嘗試添加持續集成。 為此,我使用了彈性 beanstalk,並使用另一個 AWS 工具將代碼推送到那里。 所有這些都運行良好。 我在 /public/index.php 中放置了一條測試消息以輸出“hello world”,並且在轉到 URL 時它按預期工作。 當我刪除此文本並正常運行 laravel 應用程序時,我收到 500 內部服務器錯誤。 我不確定彈性 beantalk 在部署 Laravel 應用程序時所做的一切。 因此,我不確定此錯誤是否是由於數據庫連接錯誤或 Laravel 應用程序尚未完全設置所致。
我在彈性 beantalk 之外創建了一個 RDS 數據庫實例。 我可以從 sequel pro 訪問它,並添加了用於存儲所有數據的數據庫。 我將所有必要的數據庫連接值(主機、端口、數據庫、用戶名、密碼)添加到 /config/database.php 和 elastic beanstalk 服務器配置環境變量。
我已經在網上搜索了幾天的信息,但沒有找到任何特定於此的信息。 我的問題的另一部分是對在 beanstalk 中部署期間如何設置 laravel 缺乏了解。 /.ebextensions 有什么可以幫助我實現這些目標的嗎?
當我部署我的代碼時,我需要確保所有供應商文件都通過 Composer 安裝,然后我還需要確保所有數據庫遷移/更改都發生。 我想自動化盡可能多的步驟,這樣我就可以推送代碼更改,服務器將更改代碼並繼續工作。
我還想確保在設置數據庫連接時沒有遺漏任何東西。 我需要在 laravel 中設置任何其他文件或我需要配置的彈性 beantalk 中的其他文件嗎? 我保持我的數據庫對所有連接開放,然后我可以稍后收緊限制
編輯:我的數據庫可能尚未正確配置,但這似乎不是問題的根源。 我認為我的問題是知道什么腳本以及如何在部署期間運行它們。 我想確保運行 composer 和 php artisan migrate 以使所有內容保持最新。 我怎樣才能用彈性豆莖做到這一點?
這有點離題,但根據我的經驗,我不建議使用 beanstalk 來實現良好的工作流推送和部署。 我建議您使用 Forgelaravel.com 來部署您的 GitHub 存儲庫。 在 Forge Laravel 中,您將能夠從 AWS 創建一個服務器,它會自動創建數據庫連接和東西,然后只需單擊一下,您就可以部署到服務器並保持良好的工作流程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.