【发布时间】:2020-11-02 14:49:51
【问题描述】:
我正在将 Laravel 应用程序部署到 ElasticBeanstalk。我在部署时使用 .ebextensions 配置运行迁移命令。
我在项目根文件夹下创建了一个 .extensions/01-migration.config 文件,内容如下。
container_commands:
01_cd_html:
command: "cd /var/www/html"
02_php_artisan_migrate:
command: "php artisan migrate --force"
然后我通过运行以下命令来部署我的应用程序。
eb deploy
然后我得到以下错误。
2020-07-13 11:51:59 INFO Environment update is starting.
2020-07-13 11:52:39 INFO Deploying new version to instance(s).
2020-07-13 11:52:49 ERROR [Instance: i-0a461ffb24bc26f52] Command failed on instance. An unexpected error has occurred [ErrorCode: 0000000001].
2020-07-13 11:52:49 INFO Command execution completed on all instances. Summary: [Successful: 0, Failed: 1].
2020-07-13 11:52:49 ERROR Unsuccessful command execution on instance id(s) 'i-0a461ffb24bc26f52'. Aborting the operation.
2020-07-13 11:52:50 ERROR Failed to deploy application.
我可以通过 SSH 连接到服务器并成功运行命令。但它只是不适用于部署。我的配置有什么问题,我该如何解决?
【问题讨论】:
-
您能否检查 EB 日志以找到更详细的错误消息?
-
您能否尝试将一个简单的单页 PHP 应用程序部署到 EBS 中。查看 Laravel 应用程序和演示 PHP 应用程序的 PHP 版本是否相同。另请查看 EBS 是否支持此版本。如果不支持 PHP 版本,则必须对其进行 Dockerize 并进行部署
-
嗨,我发现了问题。我需要在选项设置中设置命令所需的环境变量。这很奇怪。它也应该从 Beanstalk 环境控制台中获取。
标签: laravel amazon-web-services amazon-elastic-beanstalk