AWS DevOps & Developer Productivity Blog
Quick-Launch Your Elastic Beanstalk Application in Three Clicks
Today’s guest post is from Jebran Syed, a developer on the Elastic Beanstalk team.
AWS Elastic Beanstalk has a new feature that allows users to quickly deploy a new application with just a few clicks. You can now create a hyperlink that includes applicationName
and solutionStackName
parameters in the URL and Elastic Beanstalk will do the rest.
To create a link to quick-launch the Elastic Beanstalk PHP sample application, simply append the applicationName
and solutionStackName
parameters to the newApplication
base URL. The newApplication
base URL is:
https://console.aws.amazon.com/elasticbeanstalk/home?region=us-west-1#/newApplication
And with applicationName
and solutionStackName
parameters appended it becomes a quick launch URL:
https://console.aws.amazon.com/elasticbeanstalk/home?region=us-west-1#/newApplication?applicationName=App1&solutionStackName=PHP
This will launch the wizard with a “Review and Launch” button. Note: The “Review and Launch” button will only be displayed if applicationName
and solutionStackName
parameter values have been specified in the URL. If the parameters are modified in the URL, the browser should be refreshed to launch the wizard with the new changes.
You can click “Next” to walk through and customize each step in the wizard, or click “Review and Launch” to let Elastic Beanstalk use default settings and directly navigate to the review page. In this case, Elastic Beanstalk will set the environment to be a load-balanced web application with a t1.micro instance (unless different values have been set for the parameters in the URL).
The user can then click “Launch” to create the environment and deploy a Sample Application in it.
Specifying the Application Version
You can specify the Application Version to deploy by setting the sourceBundleUrl
parameter in the query string (note: the application version must already be stored in S3):
https://console.aws.amazon.com/elasticbeanstalk/home?region=us-west-1#/newApplication?applicationName=App1&solutionStackName=PHP&sourceBundleUrl=https://s3.amazonaws.com/s3Bucket/s3Key
Required and Optional Parameters
The following parameters are required to use a quick launch hyperlink:
-
applicationName
-
solutionStackName
: Platform that will supported by the environment. A list of supported platforms maybe found at http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html
The following parameters are optional:
-
sourceBundleUrl
: Source of application version uploaded to S3. Must be a valid S3URL. Format for setting the URL is https://s3.amazonaws.com/s3Bucket/s3Key. If value is not set then Sample application will be deployed. -
environmentType
: Default value is Load Balancing, Auto Scaling; may be set to Single Instance (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features-managing-env-types.html) -
instanceType
: Default value is t1.micro. List of available instance Types – (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html)
A Few Examples
- A load balanced web application environment that supports applications written in PHP with application name equal to App1:
https://console.aws.amazon.com/elasticbeanstalk/?region=us-west-1#/newApplication?applicationName=App1&solutionStackName=PHP
- A load balanced web application environment that supports applications written in Python with application name equal to App1 and instance Type equal to m1.small:
https://console.aws.amazon.com/elasticbeanstalk/?region=us-west-1#/newApplication?applicationName=App1&solutionStackName=PHP&instanceType=m1.small
- A Single Instance web application environment that supports applications written in Ruby with application name equal to App1 and instance Type equal to m1.small:
https://console.aws.amazon.com/elasticbeanstalk/?region=us-west-1#/newApplication?applicationName=App1&solutionStackName=Ruby&instanceType=m1.small&environmentType=SingleInstance
- An existing Java application stored in S3:
https://console.aws.amazon.com/elasticbeanstalk/?region=us-west-1#/newApplication?applicationName=App1&solutionStackName=Tomcat&sourceBundleUrl=https://s3.amazonaws.com/s3Bucket/s3Key
Summary
Users can now quickly and easily distribute and deploy their applications quickly and easily with quick launch URLs for Elastic Beanstalk. Remember that the AWS resources incur a standard usage cost. Always review the information in the wizard before launching the environment.