如何在 AWS Elastic Beanstalk 环境/应用程序中运行 artisan migrate?

问题描述 投票:0回答:1

我已经完成了所有这些事情来部署我的应用程序,但我无法在部署中运行

php artisan migrate
。我尝试了从
container_commands
.ebextensions/.platform/hooks
的许多解决方案,但没有任何效果。我什至尝试通过 ssh 进入 ec2 实例并手动运行 migrate 命令,但收到错误消息,指出连接不起作用,因为未设置环境变量。这导致我认为我需要登录(docker exec ...)到在 ec2 实例上运行的 docker 容器,但是当我尝试一个简单的
docker ps
命令时,我收到一条错误消息,指出 docker 是未知命令。这令人难以置信,因为 aws eb 文档说 EB 正在运行 docker 容器。

此时我完全不知所措。我错过了什么?

laravel amazon-web-services docker amazon-elastic-beanstalk
1个回答
0
投票

scripts.config
文件夹中创建
.ebextensions

您可以在

scripts.config
内添加如下代码。部署代码时它将自动运行。您也可以在 elastic-beanstalk 应用程序中看到日志。

它将显示错误/成功日志。

container_commands:
    01-migration:
        command: "php artisan migrate --force"
        leader_only: true
    
    02-migration:
        command: "php artisan db:seed --force"
        leader_only: true

    03-migration:
        command: "php artisan db:seed --class=DefaultFormSeeder --force"
        leader_only: true
© www.soinside.com 2019 - 2024. All rights reserved.