The table below is an exhaustive list of every configuration value accepted by Cookifed.

You can configure the app either using environment variables, or a YAML config file.

Using environment variables

When using environment variables, capitalize each configuration key and replace the dots with underscores.

For example, database.url becomes DATABASE_URL.

Using a YAML config file

Configure the app with the config/config.yml config file. Keep each configuration key in lower case and replace the dots with sub sections.

For example, database.url becomes:

database:
  url: <URL>

Configuration table

Key Description Example Default Format
port The port the app runs on 3000 string
force_ssl Whether to require SSL true boolean
rails.env The Rails environment production development string
puma.workers The number of independent puma workers 0 integer
puma.max_threads The thread limit per puma worker 5 integer
database.url The PostgreSQL database url postgres://example.com:5432/database string
database.prepared_statements Whether to enable prepared statements true boolean
database.statement_timeout The time in milliseconds after which the server cancels a running statement 10000 integer
redis.url The Redis database url redis://example.com:6379/0 string
redis.read_timeout The timeout in seconds for reading data from Redis 5 integer
redis.network_timeout The timeout in seconds for connecting to Redis 5 integer
redis.pool_timeout The timeout in seconds for waiting to get a connection from the Redis pool 5 integer
storage.service The Active Storage service adapter to use s3 string
storage.access_key_id The access key ID for the storage service string
storage.secret_access_key The secret access key for the storage service string
storage.endpoint The endpoint url for the storage service https://example.com string
storage.bucket The name of the bucket to store files in string
storage.region The region hosting the storage bucket fr-par string
smtp.port The port used to connect to the SMTP server 587 integer
smtp.hostname The hostname of the SMTP server smtp.example.com localhost string
smtp.tls Whether to use SSL/TLS (port 465). When false, STARTTLS is used if the server supports it true boolean
smtp.username The username for SMTP authentication string
smtp.password The password for SMTP authentication string
smtp.auth_method The SMTP authentication method plain string
smtp.openssl_verify_mode The OpenSSL peer verification mode for SMTP connections peer string
smtp.outgoing_address The email address used as the sender for outgoing notifications notifications@localhost string
smtp.reply_to_address The reply-to email address for outgoing notifications string
smtp.domain The domain name sent in the SMTP HELO/EHLO command example.com string