やること pumaサーバーのアプリをFargateにデプロイする。 リクエストはNginxで受ける。 Nginxとpumaの通信はソケットを用いて行う。 pumaとNginxは同じFargateタスクの別コンテナとして扱う。 こちらの記事にある下図の右側の部分のイメージです。 bluepixel.hatenablog.com 今回はNATなしで、パブリックサブネットに作ります。 github.com アプリケーション Sinatraで手早く作ります。 本質的な部分ではないので特に解説はしません。 app.rb require "logger" require "sinatra" class App < Sinatra::Base set :server, :puma set :logging, Logger.new(STDOUT) get "/" do "Hello world" end
![Fargateにおけるpuma+Nginxのソケット通信のやり方 - less is more](https://cdn-ak-scissors.b.st-hatena.com/image/square/f0e0ac1d3e154891f60172de7be6547930c318b9/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fb%2Fbluepixel%2F20200415%2F20200415190526.png)