質問編集履歴

3

エラーの内容を追記しました。

2019/04/21 12:21

投稿

koume
koume

スコア458

test CHANGED
File without changes
test CHANGED
@@ -6,6 +6,14 @@
6
6
 
7
7
  ```ここに言語を入力
8
8
 
9
+ エラーの内容です。
10
+
11
+
12
+
13
+ [8b35d5a9] Command: cd /usr/share/nginx/html/current && ( export RBENV_ROOT="/home/kinoko/.rbenv" RBENV_VERSION="" RAILS_ENV="production" ; /home/kinoko/.rbenv/bin/rbenv exec bundle exec unicorn -c /usr/share/nginx/html/current/config/unicorn/production.rb -E deployment -D )
14
+
15
+
16
+
9
17
  [32a85f10] master failed to start, check stderr log for details
10
18
 
11
19
  (Backtrace restricted to imported tasks)

2

質問の内容を修正しました。

2019/04/21 12:21

投稿

koume
koume

スコア458

test CHANGED
@@ -1 +1 @@
1
- master failed to start, check stderr log for detailsついて教えてください。
1
+ デプロイ実行をした際にunicornの起動関するエラーの解決方法を教えて頂けなでしょうか
test CHANGED
@@ -1,6 +1,8 @@
1
- Capistrano3でRailsアプリをデプロイしていますが、以下のようなエラー?が出ていて意味がわからないので
1
+ Capistrano3でRailsアプリをデプロイしていますが、以下のようなエラー?が出ていてます。
2
+
2
-
3
+ サイトで調べてみるとunicournの起動に関するエラーのようなのですが、解決方法がわからずに困っています。
4
+
3
- 教えていただけないでしょうか?
5
+ どなたか教えていただけないでしょうか?
4
6
 
5
7
  ```ここに言語を入力
6
8
 
@@ -10,7 +12,7 @@
10
12
 
11
13
  cap aborted!
12
14
 
13
- SSHKit::Runner::ExecuteError: Exception while executing as XXXXX: bundle exit status: 1
15
+ SSHKit::Runner::ExecuteError: Exception while executing as XXX.XXX.XXX.XX: bundle exit status: 1
14
16
 
15
17
  bundle stdout: master failed to start, check stderr log for details
16
18
 
@@ -34,7 +36,7 @@
34
36
 
35
37
  (See full trace by running task with --trace)
36
38
 
37
- The deploy has failed with an error: Exception while executing as XXXXXX: bundle exit status: 1
39
+ The deploy has failed with an error: Exception while executing as XXX.XXX.XXX.XX: bundle exit status: 1
38
40
 
39
41
  bundle stdout: master failed to start, check stderr log for details
40
42
 
@@ -48,6 +50,10 @@
48
50
 
49
51
  ```ここに言語を入力
50
52
 
53
+ log/unicorn.log
54
+
55
+
56
+
51
57
  I, [2019-04-19T11:26:47.131042 #16286] INFO -- : Refreshing Gem list
52
58
 
53
59
  I, [2019-04-19T11:26:57.560723 #16286] INFO -- : unlinking existing socket=/home/vagrant/chibi/chibi/tmp/unicorn.sock
@@ -66,22 +72,234 @@
66
72
 
67
73
  ```
68
74
 
75
+ unicornの設定ファイルは見よう見まねで以下のようにしています。
76
+
77
+ ```ここに言語を入力
78
+
79
+ lib/capistrano/tasks/unicorn.rb
80
+
81
+
82
+
83
+ #unicornのpidファイル、設定ファイルのディレクトリを指定
84
+
85
+ namespace :unicorn do
86
+
87
+ task :environment do
88
+
89
+ set :unicorn_pid, "#{current_path}/tmp/pids/unicorn.pid"
90
+
91
+ set :unicorn_config, "#{current_path}/config/unicorn/production.rb"
92
+
93
+ end
94
+
95
+
96
+
97
+ #unicornをスタートさせるメソッド
98
+
99
+ def start_unicorn
100
+
101
+ within current_path do
102
+
103
+ execute :bundle, :exec, :unicorn, "-c #{fetch(:unicorn_config)} -E #{fetch(:rails_env)} -D"
104
+
105
+ end
106
+
107
+ end
108
+
109
+
110
+
111
+ #unicornを停止させるメソッド
112
+
113
+ def stop_unicorn
114
+
115
+ execute :kill, "-s QUIT $(< #{fetch(:unicorn_pid)})"
116
+
117
+ end
118
+
119
+
120
+
121
+ #unicornを再起動するメソッド
122
+
123
+ def reload_unicorn
124
+
125
+ execute :kill, "-s USR2 $(< #{fetch(:unicorn_pid)})"
126
+
127
+ end
128
+
129
+
130
+
131
+ #unicronを強制終了するメソッド
132
+
133
+ def force_stop_unicorn
134
+
135
+ execute :kill, "$(< #{fetch(:unicorn_pid)})"
136
+
137
+ end
138
+
139
+
140
+
141
+ #unicornをスタートさせるtask
142
+
143
+ desc "Start unicorn server"
144
+
145
+ task start: :environment do
146
+
147
+ on roles(:app) do
148
+
149
+ start_unicorn
150
+
151
+ end
152
+
153
+ end
154
+
155
+
156
+
157
+ #unicornを停止させるtask
158
+
159
+ desc "Stop unicorn server gracefully"
160
+
161
+ task stop: :environment do
162
+
163
+ on roles(:app) do
164
+
165
+ stop_unicorn
166
+
167
+ end
168
+
169
+ end
170
+
171
+
172
+
173
+ #既にunicornが起動している場合再起動を、まだの場合起動を行うtask
174
+
175
+ desc "Restart unicorn server gracefully"
176
+
177
+ task restart: :environment do
178
+
179
+ on roles(:app) do
180
+
181
+ if test("[ -f #{fetch(:unicorn_pid)} ]")
182
+
183
+ reload_unicorn
184
+
185
+ else
186
+
187
+ start_unicorn
188
+
189
+ end
190
+
191
+ end
192
+
193
+ end
194
+
195
+
196
+
197
+ #unicornを強制終了させるtask
198
+
199
+ desc "Stop unicorn server immediately"
200
+
201
+ task force_stop: :environment do
202
+
203
+ on roles(:app) do
204
+
205
+ force_stop_unicorn
206
+
207
+ end
208
+
209
+ end
210
+
211
+ end
212
+
213
+ ```
214
+
215
+ ```ここに言語を入力
216
+
217
+ config/unicorn/production.rb
218
+
219
+
220
+
221
+ #ワーカーの数。後述
222
+
223
+ $worker = 2
224
+
225
+ #何秒経過すればワーカーを削除するのかを決める
226
+
227
+ $timeout = 30
228
+
229
+ #自分のアプリケーション名、currentがつくことに注意。
230
+
231
+ $app_dir = "/usr/share/nginx/html/current"
232
+
233
+ #リクエストを受け取るポート番号を指定。後述
234
+
235
+ $listen = File.expand_path 'tmp/sockets/.unicorn.sock', $app_dir
236
+
237
+ #PIDの管理ファイルディレクトリ
238
+
239
+ $pid = File.expand_path 'tmp/pids/unicorn.pid', $app_dir
240
+
241
+ #エラーログを吐き出すファイルのディレクトリ
242
+
243
+ $std_log = File.expand_path 'log/unicorn.log', $app_dir
244
+
245
+
246
+
247
+ # 上記で設定したものが適応されるよう定義
248
+
249
+ worker_processes $worker
250
+
251
+ working_directory $app_dir
252
+
253
+ stderr_path $std_log
254
+
255
+ stdout_path $std_log
256
+
257
+ timeout $timeout
258
+
259
+ listen $listen
260
+
261
+ pid $pid
262
+
263
+
264
+
265
+ #ホットデプロイをするかしないかを設定
266
+
267
+ preload_app true
268
+
269
+
270
+
271
+ #fork前に行うことを定義。後述
272
+
273
+ before_fork do |server, worker|
274
+
275
+ defined?(ActiveRecord::Base) and ActiveRecord::Base.connection.disconnect!
276
+
277
+ old_pid = "#{server.config[:pid]}.oldbin"
278
+
279
+ if old_pid != server.pid
280
+
281
+ begin
282
+
283
+ Process.kill "QUIT", File.read(old_pid).to_i
284
+
285
+ rescue Errno::ENOENT, Errno::ESRCH
286
+
287
+ end
288
+
289
+ end
290
+
291
+ end
292
+
293
+
294
+
295
+ #fork後に行うことを定義。後述
296
+
297
+ after_fork do |server, worker|
298
+
299
+ defined?(ActiveRecord::Base) and ActiveRecord::Base.establish_connection
300
+
301
+ end
302
+
303
+ ```
304
+
69
305
  宜しくお願いします。
70
-
71
-
72
-
73
- 追記
74
-
75
- nuicornの起動関係あたりかなと思い仮想マシン側で起動出来るか確認しました。
76
-
77
- ```ここに言語を入力
78
-
79
- [vagrant@localhost chibi]$ rake unicorn:start
80
-
81
- unicorn -c /home/vagrant/chibi/chibi/config/unicorn.rb -E development -D
82
-
83
-
84
-
85
- 起動は出来るみたいです。
86
-
87
- ```

1

unicornの起動確認してみました。

2019/04/21 12:17

投稿

koume
koume

スコア458

test CHANGED
File without changes
test CHANGED
@@ -67,3 +67,21 @@
67
67
  ```
68
68
 
69
69
  宜しくお願いします。
70
+
71
+
72
+
73
+ 追記
74
+
75
+ nuicornの起動関係あたりかなと思い仮想マシン側で起動出来るか確認しました。
76
+
77
+ ```ここに言語を入力
78
+
79
+ [vagrant@localhost chibi]$ rake unicorn:start
80
+
81
+ unicorn -c /home/vagrant/chibi/chibi/config/unicorn.rb -E development -D
82
+
83
+
84
+
85
+ 起動は出来るみたいです。
86
+
87
+ ```