質問編集履歴

1

本文追記

2022/06/09 22:38

投稿

hajsu00
hajsu00

スコア151

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
-
1
+ RailsアプリをECS Fargate起動タイプへデプロイし、コンテナ内で`rails db:seed`を実行中に発生した`Mysql2::Error: Unknown database`が解決できません。
2
+
2
- !!!執筆途中!!!
3
+ ご助言いただけると幸いです。
3
-
4
4
 
5
5
  ## 環境
6
6
  - ruby 3.0.1
@@ -8,9 +8,17 @@
8
8
  - docker 20.10.12
9
9
  - docker-compos 1.29.2
10
10
 
11
-
12
11
  ## 起きている問題
13
-
12
+ ECSにRailsアプリをデプロイしたところログイン画面までは表示されるが、ログインを実行すると`we are sorry but something went wrong`が表示される。
13
+ ログを確認したところseedの実行に失敗していたことが原因だとわかりました。
14
+ デバッグのためECS内のコンテナ内にローカルから接続して`rails db:seed`を実行したところ、seed.rbの46行目(59行目)で`Mysql2::Error: Unknown database`が発生しました。
15
+
16
+ ## 前提事項
17
+ データベースのdrop, create自体はできている。
18
+ `rails db:drop DISABLE_DATABASE_ENVIRONMENT_CHECK=1`
19
+ `rails db:create`
20
+ `rails db:migrate`
21
+ ※`RAILS_ENV=production`と明示的に指定しても症状は変わりませんでした。
14
22
 
15
23
  #### ログ
16
24
  ```bash
@@ -102,7 +110,7 @@
102
110
  # 追加のユーザーをまとめて生成する
103
111
  ActionMailer::Base.perform_deliveries = false
104
112
  m = 0
105
- 49.times do |n|
113
+ 49.times do |n| <= 46行目
106
114
  name = Faker::Name.name
107
115
  email = "example-#{n + 1}@railstutorial.org"
108
116
  password = "password"
@@ -115,7 +123,7 @@
115
123
  if (2 * n + 1) % 3 == 0
116
124
  m += 1
117
125
  user.avatar.attach(io: File.open(Rails.root.join("app/assets/images/test/user_test_avatar/user_test_avatar_#{m + 1}.png")), filename: "user_test_avatar_#{m + 1}.png")
118
- user.user_cover.attach(io: File.open(Rails.root.join("app/assets/images/test/user_test_cover/user_test_cover_#{m + 1}.jpg")), filename: "user_test_cover_#{m + 1}.jpg")
126
+ user.user_cover.attach(io: File.open(Rails.root.join("app/assets/images/test/user_test_cover/user_test_cover_#{m + 1}.jpg")), filename: "user_test_cover_#{m + 1}.jpg") <= 59行目
119
127
  else
120
128
  user.avatar.attach(io: File.open(Rails.root.join('app/assets/images/default_avatar.png')), filename: 'default_avatar.png')
121
129
  user.user_cover.attach(io: File.open(Rails.root.join('app/assets/images/default_cover.png')), filename: 'default_cover.png')
@@ -193,5 +201,3 @@
193
201
  port: 3306
194
202
  ```
195
203
 
196
-
197
-