質問編集履歴

2

xz

2020/05/10 11:15

投稿

NEMOTOSHOTA
NEMOTOSHOTA

スコア32

test CHANGED
File without changes
test CHANGED
@@ -44,41 +44,53 @@
44
44
 
45
45
 
46
46
 
47
+ やったこと
48
+
49
+ ・ローカルファイル内の```config/database.yml```をみて、```ENV['DATABASE_PORT']```の記述がないことを確認。そしてmasterにpushしてbundle ```exec cap production deploy```をしたところ同じエラーが表示された。
50
+
51
+
52
+
53
+ ※ローカルファイルでポート名を指定するファイルはdattabase.ymlしかないので次はec2内のファイルをみる↓
54
+
55
+
56
+
57
+ ・ディレクトリ内にあるdeploy.rbではシンボリックファイルの場所はEc2内の```アプリ名/shared/config/settings.yml```内を参照するようにしているので設定をみたが```ENV['DATABASE_PORT'```の記述はなかった。
58
+
59
+ シンボリックファイルの設定は下記になります。
60
+
61
+ https://github.com/shota0701nemoto/Portfolio/blob/master/config/deploy.rb
62
+
63
+
64
+
65
+ ・次にEC2内のアプリ名```/config/database.yml```のファイルをみたところ、```ENV['DATABASE_PORT']```を設定していたのでdevelopment、testそれぞれにport: 22を上書きして```bundle exec cap production deploy```をしたところ、同じエラー```PG::ConnectionBad: invalid port number: "ENV['DATABASE_PORT']"```が表示された。
66
+
67
+ productionのportにはElasticIPを指定していたので、試しませんでした。
68
+
69
+
70
+
47
71
  ##推測
48
72
 
49
73
  どこかのファイルのホスト名が間違っていることは理解したが、```ENV['DATABASE_PORT']```の記述があるファイルが見つからない。
50
74
 
51
75
 
52
76
 
53
- やったこと
54
-
55
- ・ローカルファイル内の```config/database.yml```をみて、```ENV['DATABASE_PORT']```の記述がないことを確認。そしてmasterにpushしてbundle ```exec cap production deploy```をしたところ同じエラーが表示された。
56
-
57
-
58
-
59
- ※ローカルファイルでポート名を指定するファイルはdattabase.ymlしかないので次はec2内のファイルをみる↓
60
-
61
-
62
-
63
- ・ディレクトリ内にあるdeploy.rbではシンボリックファイルの場所はEc2内の```アプリ名/shared/config/settings.yml```内を参照するようにしているので設定をみたが```ENV['DATABASE_PORT'```の記述はなかった。
64
-
65
- シンボリックファイルの設定は下記になります。
66
-
67
- https://github.com/shota0701nemoto/Portfolio/blob/master/config/deploy.rb
68
-
69
-
70
-
71
- ・次にEC2内のアプリ名```/config/database.yml```のファイルをみたところ、```ENV['DATABASE_PORT']```を設定していたのでdevelopment、testそれぞれにport: 22を上書きして```bundle exec cap production deploy```をしたところ、同じエラー```PG::ConnectionBad: invalid port number: "ENV['DATABASE_PORT']"```が表示された。
72
-
73
- productionのportにはElasticIPを指定していたので、試しませんでした。
74
-
75
-
76
-
77
77
  ここのエラーで表示されているENV['DATABASE_PORT']は、どの部分を参照しているのでしょうか?
78
78
 
79
79
 
80
80
 
81
+
82
+
83
+ 動くのを確認するためにはportを環境変数ではなく、一時的に直で入力すればうごくのかと思いまして直で入力したのですが同じエラーになり、エラーがどのファイルのことを行っているのかさえ理解できれば解決できると思いました。
84
+
85
+
86
+
87
+
88
+
89
+ また、いづれかのファイルの```ENV['DATABASE_PORT']```より上で指定しているコードは読み込めている?ため環境変数周りのエラーではない?側面もあることに気がつきました。
90
+
91
+
92
+
81
- 加えて、こちらの解決法、ヒントなどがあれば教えていただきたいです。
93
+ こちらの解決法、ヒントなどがあれば教えていただきたいです。
82
94
 
83
95
 
84
96
 

1

s

2020/05/10 11:15

投稿

NEMOTOSHOTA
NEMOTOSHOTA

スコア32

test CHANGED
@@ -1 +1 @@
1
- 【capistrano】エラーで表示されているENV['DATABASE_PORT']はどの部分を参照しているか?
1
+ 【capistrano】エラーで表示されているENV['DATABASE_PORT']はどの部分を参照しているか?
test CHANGED
@@ -78,10 +78,16 @@
78
78
 
79
79
 
80
80
 
81
+ 加えて、こちらの解決法、ヒントなどがあれば教えていただきたいです。
82
+
83
+
84
+
81
85
  ENV['DATABASE_PORT'] の中身は5432になります。
82
86
 
83
87
 
84
88
 
89
+ 必要なファイルが他にあれば追加します。
90
+
85
91
 
86
92
 
87
93
  deploy.rb