Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

525
Views
Elastic Beanstalk: customize Puma configuration

The current Beanstalk solution stack for Ruby + Puma uses the configuration file at /opt/elasticbeanstalk/support/conf/pumaconf.rb and ignores the config/puma.rb inside the Rails application directory.

I could override the file above with a custom one via .ebextensions but am hesitant because I'd like to avoid breakage in case the path to the PID or - more importantly - unix socket files changes in upcoming solution stack versions.

What is the best practice for customizing the Puma configuration on Beanstalk?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

We use Ruby+Passenger, but it sounds similar enough to your situation. We need to customize the nginx configuration file stored at /opt/elasticbeanstalk/support/conf/nginx_config.erb, so we do it via .ebextensions and sed.

Here's an example to get you started:

.ebextensions/01-edit-nginx.config

container_commands:
  01backup_config:
    command: "cp -n /opt/elasticbeanstalk/support/conf/nginx_config.erb /opt/elasticbeanstalk/support/conf/nginx_config.erb.original"
  02edit_config:
    command: "sh -c \"sed '/string_to_insert_text_after/ i\
\    text_to_be_inserted;' /opt/elasticbeanstalk/support/conf/nginx_config.erb.original > /opt/elasticbeanstalk/support/conf/nginx_config.erb\""

This will make a backup copy of the configuration file (without overwriting it if it already exists, thanks to the -n flag) and then insert the line "text_to_be_inserted" after the line "string_to_insert_text_after". You can pipe multiple sed commands together to insert multiple lines.

over 4 years ago · Santiago Trujillo Report

0

On Amazon Linux 2, you can use Procfile to do this, e.g.

web: puma -C /var/app/current/config/puma.rb

See the docs at https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ruby-platform-procfile.html for more information.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!