markdown ElasticBeanstalkでRails的アプリがデプロイできない

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown ElasticBeanstalkでRails的アプリがデプロイできない相关的知识,希望对你有一定的参考价值。

# Ruby、bundlerのバージョン違い
Ruby 2.6.3、bundler 2.0.1でデプロイしようとしたら
```
can't find gem bundler (>= 0.a) with executable bundle
```
EBのデフォルトはRuby 2.6.2、bundler 1.16.1なのでそれに合わせた。

# 下記メッセージはそのバージョンのデプロイに失敗したって言ってるだけ
Incorrect application version found on all instances. Expected version "Sample Application" (deployment 1).

# RAILS_MASTER_KEYの設定漏れ
RAILS_MASTER_KEY環境変数にrails newしたときのconfig/master.keyを設定するか、
master.keyを本番に一緒にデプロイする。

# rake db:seedでMysql2::Error: Incorrect string value
RDSのインスタンス作成時にDBを作成しており、下記エラーが出た
```
Mysql2::Error: Incorrect string value: '\xE5\x8C\x97\xE6\xB5\xB7...' for column 'name' at row 1
```
RDS MySQLでパラメータグループを作成し、character_setで検索してそれらをutf8に設定
したが、改善せず。

RDSで最初に作成したDBを削除、あるいはRDSインスタンスをDB指定しないで作り直して、
ebextenstionsにrake db:createを追加してRAILS_SKIP_MIGRATIONS=trueに設定
```
container_commands:
  01-db_create:
    command: bundle exec rake db:create
  02-db_migrate:
    command: bundle exec rake db:migrate
  03-db_seed:
    command: bundle exec rake db:seed
```

以上是关于markdown ElasticBeanstalkでRails的アプリがデプロイできない的主要内容,如果未能解决你的问题,请参考以下文章

通过 ElasticBeanStalk 与 Docker Image 交互

Terraform 和 ElasticBeanstalk。当 EC2 由 elasticbeanstalk 启动时,如何在 EC2 中安装 EFS?

ElasticBeanstalk 和 .ebignore 文件

如何使用 elasticbeanstalk 设置自动缩放组健康检查类型

如何为 ElasticBeanStalk 中托管的 NodeJs 应用程序指定端口?

为 Elasticbeanstalk 单实例乘客配置 SSL