#実現したいこと
Nginx + Unicorn でデプロイしている Rails アプリのアプリケーションサーバーを Puma に変更したい。
現状下記の手順で行っているがデプロイまで行うことができないので、不足等あればご教示願います。
使用ツール
・Rails 5.2.4.1
・amazon linux 2
・nginx 1.12.2
・unicorn 5.6.0
##実行したこと
1.config/puma.rbの編集
port ENV.fetch("PORT") { 3000 }
をコメントアウトし、
bind "unix://#{Rails.root}/tmp/sockets/puma.sock"
を追記
rb
1#port ENV.fetch("PORT") { 3000 } 2bind "unix://#{Rails.root}/tmp/sockets/puma.sock"
2.Nginxの設定ファイル /etc/nginx/conf.d/testapp.conf の修正
upstream を unicorn から puma に変更
該当箇所
conf
1#upstream unicorn_server { 2# server unix:/var/www/rails/testapp/tmp/sockets/.unicorn.sock fail_timeout=0; 3#} 4 5upstream app_server { 6 server unix:/var/www/rails/testapp/tmp/sockets/puma.sock fail_timeout=0; 7}
上記ファイルの全体
conf
1# log directory 2error_log /var/www/rails/testapp/log/nginx.error.log; #自分のアプリケーション名に変更 3access_log /var/www/rails/testapp/log/nginx.access.log; #自分のアプリケーション名に変更 4 5upstream app_server { 6 server unix:/var/www/rails/testapp/tmp/sockets/puma.sock fail_timeout=0; 7} 8 9server { 10 listen 80; 11 client_max_body_size 4G; 12 server_name ドメイン名; #アプリのElastic IPに変更 13 14 keepalive_timeout 5; 15 16 # Location of our static files 17 root /var/www/rails/testapp/public; #自分のアプリケーション名に変更 18 19 location ~ ^/assets/ { 20 root /var/www/rails/testapp/public; #自分のアプリケーション名に変更 21 } 22 23 location / { 24 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 25 proxy_set_header Host $http_host; 26 proxy_redirect off; 27 28 if (!-f $request_filename) { 29 proxy_pass http://app_server; 30 break; 31 } 32 } 33 34 location /cable { 35 proxy_pass http://app_server/cable; 36 proxy_http_version 1.1; 37 proxy_set_header Upgrade websocket; 38 proxy_set_header Connection Upgrade; 39 proxy_set_header X-Real-IP $remote_addr; 40 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 41 proxy_set_header X-Forwarded-Proto https; 42 } 43 44 error_page 500 502 503 504 /500.html; 45 location = /500.html { 46 root /var/www/rails/testapp/public; #自分のアプリケーション名に変更 47 } 48}
上記の2点以外に必要な工程はございますでしょうか。
その他情報等有りましたら、ご教示頂けますと幸いです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。