When deploying your applications, you may want to customize and configure the software that your application depends on. These files could be either dependencies required by the application—for example, additional packages from the yum repository—or they could be configuration files such as a replacement for httpd.conf to override specific settings that are defaulted by AWS Elastic Beanstalk. You may also want to customize your environment resources that are part of your AWS Elastic Beanstalk environment (e.g., SQS queues, ElastiCache clusters). For example, you may want to add an Amazon SQS queue and an alarm on queue depth, or you might want to add an Amazon ElastiCache cluster.
You can use configuration files if you are deploying your Elastic Beanstalk application using one of the following container types:
PHP 5.3, PHP 5.4, and PHP 5.5
Ruby 1.8.7, 1.9.3, 2.0.0, and 2.1.2
Apache Tomcat 6, 7, and 8
Windows Server 2008 R2 running IIS 7.5 and Windows Server 2012 running IIS 8 or IIS 8.5
To learn how to customize your environment using configuration files, see Elastic Beanstalk Environment Configuration.
Currently, Elastic Beanstalk does not support configuration files for the following legacy container types:
Tomcat 6 and 7
Windows Server 2008 R2 running IIS 7.5 and Windows Server 2012 running IIS 8
If you are unsure if you are running a legacy container, check the Elastic Beanstalk console. For instructions, see To check if you are using a legacy container type.
If you want to customize your environment, you can create a custom Amazon Machine Image (AMI) that Elastic Beanstalk uses for your applications. You do this by customizing the existing Elastic Beanstalk AMI. For information, see Using Custom AMIs.