Procfiles

Procfiles are used to define Explicit Services (Procfiles) for an app.

They are completely optional: in the absence of a Procfile, Enclave will fallback to an Implicit Service (CMD).

Providing a Procfile

If you are using Dockerfile Deploy, add a file named Procfile at the root of your repository.

If you are using Direct Docker Image Deploy, it must be located at /.aptible/Procfile in your Docker image. See Procfiles and .aptible.yml with Direct Docker Image Deploy for more information.

Procfile syntax

The Procfile syntax is standardized, and consists of a mapping of one or more Service names to commands that should be executed for those Services.

The two should be separated by a : character.

Procfile examples

Single web service

web: bundle exec rails server

web and worker services

web: bundle exec rails server
worker: bundle exec sidekiq

Using environment variables

web: bundle exec rails server
worker: bundle exec sidekiq -c "$SIDEKIQ_CONCURRENCY"