HomeFAQ › How do I run Puma on a Mac?

How do I run Puma on a Mac?

Puma is the fast, multi-threaded HTTP 1.1 server for Ruby/Rack apps, and the default app server for Ruby on Rails; it is what actually serves a Rails, Sinatra or Hanami app behind Nginx/Apache/Caddy. Each request runs on a thread from a pool (default 0:16); cluster mode (-w or WEB_CONCURRENCY) also forks worker processes, each with its own pool, and preload_app! lets them share memory copy-on-write. Configure it in config/puma.rb (or -C), bind with -b tcp://127.0.0.1:9292; Rails defaults to :3000. Install the gem (gem install puma, or bundle add puma in an app) and run bundle exec puma. The optional control server (--control-url + --control-token) lets pumactl report status and restart/stop workers without dropping connections; that is also how a zero-downtime pumactl phased-restart works. BSD 3-Clause. Put a reverse proxy in front of it from Proxies & Load Balancers (the Reverse Proxy pane already has a "Rails (puma)" preset on :3000), and pair it with Sidekiq for background jobs.

With FrontierStack you can install or connectPuma from its Web Servers catalog, then monitor its health, ports and certificate alongside the rest of your stack.

Run it from your Mac.

FrontierStack installs, monitors and secures services on this Mac and on linked servers.

Download FrontierStack

Related questions