puma - Man Page

manual page for puma version 6.4.2


puma <options> <rackup file>

-b,  --bind URI

URI to bind to (tcp://, unix://, ssl://)

--bind-to-activated-sockets [only]

Bind to all activated sockets

-C,  --config PATH

Load PATH as a config file


Prevent Puma from searching for a config file

--control-url URL

The bind url to use for the control server. Use 'auto' to use temp unix server

--control-token TOKEN

The token to use as authentication for the control server


Log lowlevel debugging information

--dir DIR

Change to DIR before starting

-e,  --environment ENVIRONMENT

The environment to run the Rack app on (default development)

-f,  --fork-worker=[REQUESTS]

Fork new workers from existing worker. Cluster mode only Auto-refork after REQUESTS (default 1000)

-I,  --include PATH

Specify $LOAD_PATH directories

--idle-timeout SECONDS

Number of seconds until the next request before automatic shutdown

-p,  --port PORT

Define the TCP port to bind to Use -b for more advanced options

--pidfile PATH

Use PATH as a pidfile


Preload the app. Cluster mode only


Prune out the bundler env if possible

--extra-runtime-dependencies GEM1,GEM2

Defines any extra needed gems when using --prune-bundler

-q,  --quiet

Do not log requests internally (default true)

-v,  --log-requests

Log requests as they occur

-R,  --restart-cmd CMD

The puma command to run during a hot restart Default: inferred

-s,  --silent

Do not log prompt messages other than errors

-S,  --state PATH

Where to store the state details

-t,  --threads INT

min:max threads to use (default 0:16)


Enable early hints support

-V,  --version

Print the version information

-w,  --workers COUNT

Activate cluster mode: How many worker processes to create

--tag NAME

Additional text to display in process listing

--redirect-stdout FILE

Redirect STDOUT to a specific file

--redirect-stderr FILE

Redirect STDERR to a specific file


Append to redirected files

-h,  --help

Show help


January 2024 puma version 6.4.2