本地Laravel应用部署AWS Beanstalk:如何添加Laravel.yml配置依赖?
Laravel on AWS Beanstalk:配置数据库与依赖的YAML文件设置
1. 确定配置文件存放目录
在你的Laravel项目根目录下新建.ebextensions隐藏文件夹,AWS Beanstalk会自动读取该目录下的配置文件来调整部署环境。
2. 编写Beanstalk配置YAML文件
在.ebextensions目录下创建配置文件(建议命名为laravel.config,Beanstalk默认识别.config后缀的YAML文件),用来配置数据库连接、依赖安装等操作,示例内容如下:
# 安装Composer依赖 commands: 01_install_deps: command: "composer install --no-dev --optimize-autoloader" cwd: "/var/app/current" # 设置Laravel环境变量 option_settings: - namespace: aws:elasticbeanstalk:application:environment option_name: APP_ENV value: production - namespace: aws:elasticbeanstalk:application:environment option_name: DB_CONNECTION value: mysql - namespace: aws:elasticbeanstalk:application:environment option_name: DB_HOST value: 你的数据库地址 - namespace: aws:elasticbeanstalk:application:environment option_name: DB_PORT value: 3306 - namespace: aws:elasticbeanstalk:application:environment option_name: DB_DATABASE value: 数据库名称 - namespace: aws:elasticbeanstalk:application:environment option_name: DB_USERNAME value: 数据库用户名 - namespace: aws:elasticbeanstalk:application:environment option_name: DB_PASSWORD value: 数据库密码 # 运行Laravel迁移(仅主实例执行) container_commands: 01_run_migrations: command: "php artisan migrate --force" cwd: "/var/app/current" leader_only: true
3. 若为Laravel自定义YAML配置文件
如果你的laravel.yml是Laravel项目自身的自定义配置文件,直接将它放到项目的config/目录下即可,Laravel会自动加载该目录下的所有配置文件,后续可通过config('laravel.配置项键名')调用配置内容。
4. 提交更新并部署
将新增的配置文件加入Git仓库,推送至CodeCommit后,Beanstalk会自动触发重新部署:
git add .ebextensions/ config/laravel.yml git commit -m "添加Laravel配置文件用于Beanstalk环境配置" git push origin 你的分支名
注意事项
- 数据库密码等敏感信息建议通过Beanstalk控制台的「配置」→「软件」→「环境属性」设置,避免硬编码在配置文件中。
- 运行Artisan命令需加
--force参数,跳过生产环境的交互确认。 leader_only: true确保数据库迁移仅在环境主实例执行,避免多实例重复操作。
内容的提问来源于stack exchange,提问作者maxasela
相关产品推荐
相关产品推荐

