{"id":58323,"date":"2016-07-13T22:00:42","date_gmt":"2016-07-13T19:00:42","guid":{"rendered":"https:\/\/www.javacodegeeks.com\/?p=58323"},"modified":"2016-07-13T17:40:49","modified_gmt":"2016-07-13T14:40:49","slug":"run-spring-boot-application-aws-using-elastic-beanstalk","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html","title":{"rendered":"Run your Spring Boot application on AWS using Elastic Beanstalk"},"content":{"rendered":"<p>Although I previously wrote how easy it is to get your <a href=\"http:\/\/projects.spring.io\/spring-boot\/\">Spring Boot<\/a> application up and running on <a href=\"https:\/\/aws.amazon.com\/\">AWS<\/a> by using <a href=\"https:\/\/boxfuse.com\/\">Boxfuse<\/a> I think it is good idea to have notion of some alternative ways to achieve the same. One of these alternatives is by using <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/Welcome.html\">AWS Elastic Beanstalk<\/a>. In this post I will describe the basic configuration to get your Spring Boot application running in the cloud on AWS. After the Elastic Beanstalk is created you will have at least one EC2 instance running on AWS with an <a href=\"https:\/\/aws.amazon.com\/elasticloadbalancing\/\">Elastic Load Balancer<\/a> in front of it. Also an <a href=\"https:\/\/aws.amazon.com\/autoscaling\/\">Auto Scaling Group<\/a> is provided and of course some <a href=\"http:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/using-network-security.html\">Security Groups<\/a>. When put in a diagram it looks like this (by the way, the database part will not be used in the example of this post):<br \/>\n&nbsp;<br \/>\n&nbsp;<br \/>\n&nbsp;<br \/>\n<a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/aeb-architecture2\/\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-58330\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/aeb-architecture2.png\" alt=\"aeb-architecture2\" width=\"600\" height=\"450\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/aeb-architecture2.png 600w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/aeb-architecture2-300x225.png 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>I assume you already have an account for AWS. If not, go get <a href=\"https:\/\/aws.amazon.com\/free\/\">your free subscription<\/a> for the first year (mind the conditions to make sure it stays free).<\/p>\n<p><strong>Setup AWS IAM<\/strong><br \/>\nThe first step to take is to create a new user that will be able to run AWS Elastic Beanstalk. This user will only have these permissions so if the account details might fall in wrong hands the damage will be minimised (explained <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/concepts-roles.html#concepts-roles-user\">here<\/a>). When you create your user don\u2019t forget to download your credentials for that user, you will need these later on.<br \/>\nI put the new user in a group \u2018spring-boot-users\u2019 and assigned the following roles and policies to that group:<br \/>\n\u2018<a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/AWSHowTo.iam.managed-policies.html\">AWSElasticBeanstalkFullAccess<\/a>\u2018:<\/p>\n<p><a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/screenshot-at-jul-12-11-22-06\/\"><img decoding=\"async\" class=\"aligncenter wp-image-58331\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-22-06.png\" alt=\"screenshot-at-jul-12-11-22-06\" width=\"860\" height=\"312\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-22-06.png 900w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-22-06-300x109.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-22-06-768x279.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/p>\n<p>While we are here you might also want to create the following two roles (they should be created automatically when creating your first Elastic Beanstalk environment with the Management Console or EB CLI but I recall I had some issues with them and ended up creating them myself):<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<ul>\n<li>aws-elasticbeanstalk-ec2-role: with the following policies attached: <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/concepts-roles.html#concepts-roles-instance\">AWSElasticBeanstalkWebTier<\/a><\/li>\n<li>aws-elasticbeanstalk-service-role: with the following policy attached: <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/concepts-roles.html#concepts-roles-service\">AWSElasticBeanstalkEnhancedHealth<\/a><\/li>\n<\/ul>\n<p><strong>Install Elastic Beanstalk client interface<\/strong><br \/>\nWith all this in place we are almost ready to get our hands dirty. I prefer using <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/eb-cli3.html\">the CLI<\/a> instead of the <a href=\"https:\/\/aws.amazon.com\/console\/\">Management Console<\/a> because by using the CLI you can script the whole thing which makes live much easier. To <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/eb-cli3-install.html#eb-cli3-install-osx\">install the CLI<\/a> (I am using a Mac) simply run:<br \/>\n<code>brew install awsebcli<\/code><br \/>\nSetup your credentials of your new user to be used with the CLI. I add them to my \u2018~\/.aws\/credentials\u2019 file like this:<\/p>\n<pre class=\"brush:bash\">[default]\r\naws_access_key_id = 1234567890\r\naws_secret_access_key = hrhyueiryt983745983erti+UXsF6IvC\r\n\r\n[spring-boot]\r\naws_access_key_id = 0987654321\r\naws_secret_access_key = hdgdfghkjg384957893745dc7\/Xrsekgu7V4<\/pre>\n<p>So in my credential file I have <a href=\"http:\/\/docs.aws.amazon.com\/cli\/latest\/userguide\/cli-chap-getting-started.html#cli-multiple-profiles\">added a profile<\/a> \u2018spring-boot\u2019 with the corresponding key and secret.<\/p>\n<p><strong>Setup your Spring Boot project<\/strong><br \/>\nNow everything is setup to get a EB environment up and running. Go to your Spring-boot project folder and in that directory perform the following command:<br \/>\n<code>eb init<\/code><br \/>\nThe configuration for the EB will now be set up based on the input you supply:<\/p>\n<p><a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/screenshot-at-jul-12-11-54-41\/\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-58333\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-54-41.png\" alt=\"screenshot-at-jul-12-11-54-41\" width=\"529\" height=\"900\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-54-41.png 529w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-11-54-41-176x300.png 176w\" sizes=\"(max-width: 529px) 100vw, 529px\" \/><\/a><\/p>\n<p>In your project folder you will now see a new folder \u2018.elasticbeanstalk\u2019 with in it a file \u2018config.yml\u2019. Since I build my application with Maven I add the following line to the \u2018config.yml\u2019 so it will deploy my latest build snapshot version to the Elastic Beanstalk:<br \/>\n<code>deploy:<br \/>\nartifact: target\/jwt-spring-security-demo-1.0.0-SNAPSHOT.jar<\/code><br \/>\nAlso I enter a value for the profile so the CLI will pick the correct credentials from my credential file that I modified before. The configuration file ends up like this:<\/p>\n<pre class=\"brush:bash\">branch-defaults:\r\n  master:\r\n    environment: null\r\n    group_suffix: null\r\ndeploy:\r\n  artifact: target\/jwt-spring-security-demo-1.0.0-SNAPSHOT.jar\r\nglobal:\r\n  application_name: spring-boot-demo\r\n  default_ec2_keyname: spring-boot-demo\r\n  default_platform: Java 8\r\n  default_region: eu-central-1\r\n  profile: spring-boot\r\n  sc: git<\/pre>\n<p><strong>Create the Elastic Beanstalk instance<\/strong><br \/>\nIf you perform \u2018eb create\u2019 in the prompt and accept the default values you will get your own Elastic Beanstalk instance with your Spring Boot application on it (please note that it takes few minutes for everything to be up and running). When the creation is finished you can see your Elastic Beanstalk instance in the Management Console:<\/p>\n<p><a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/screenshot-at-jul-12-15-41-56\/\"><img decoding=\"async\" class=\"aligncenter wp-image-58334\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-15-41-56.png\" alt=\"screenshot-at-jul-12-15-41-56\" width=\"860\" height=\"523\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-15-41-56.png 900w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-15-41-56-300x182.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-15-41-56-768x467.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/p>\n<p><strong>Test the Elastic Beanstalk instance<\/strong><br \/>\nWhen you now run \u2018eb open\u2019 a browser will be started pointing to your application. Right now mine is saying 502 Bad Gateway:<\/p>\n<p><a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/screenshot-at-jul-12-13-16-07\/\"><img decoding=\"async\" class=\"aligncenter wp-image-58335 size-medium\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-13-16-07-300x124.png\" alt=\"screenshot-at-jul-12-13-16-07\" width=\"300\" height=\"124\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-13-16-07-300x124.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-13-16-07-768x317.png 768w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-13-16-07.png 817w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>There is one issue left that I have to solve. The default stack is supplied with a EC2 instance that has running <a href=\"https:\/\/nginx.org\/en\/\">Nginx<\/a> on it as a reversed proxy and it listens to port 80. My spring-boot applications runs on port 8888 but this port is not accessible from the outside (not opened in the default security group that was created by the Elastic Beanstalk). The issue can be solved in three ways (at least):<\/p>\n<ul>\n<li>Open up port 8888 on the EC2 instance and have the Elastic Load Balancer \u2018talk\u2019 to that port. That way we are bypassing the Nginx on port 80.<\/li>\n<li>Configure Nginx so it passes the incoming traffic on port 80 to 8888.<\/li>\n<li>Make our Spring Boot application run on port 5000 since that is <a href=\"http:\/\/docs.aws.amazon.com\/elasticbeanstalk\/latest\/dg\/java-se-platform.html\">the default<\/a> the Nginx is forwarding too.<\/li>\n<\/ul>\n<p>I will choose for the last option for this post to keep the Elastic Beanstalk configuration simple. After modifying the port in the \u2018application.yml\u2019 file like this:<br \/>\n<code>server:<br \/>\nport: 5000<\/code><br \/>\nand rebuilding the application, I can redeploy it with:<br \/>\n<code>eb deploy<\/code><br \/>\nNow when I access the url \u201c<a href=\"http:\/\/spring-boot-demo-dev2.eu-central-1.elasticbeanstalk.com\/hello\" rel=\"nofollow\">http:\/\/spring-boot-demo-dev2.eu-central-1.elasticbeanstalk.com\/hello<\/a> \u201d I get the expected result:<\/p>\n<p><a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/screenshot-at-jul-12-16-29-45\/\"><img decoding=\"async\" class=\"aligncenter wp-image-58336\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-16-29-45.png\" alt=\"screenshot-at-jul-12-16-29-45\" width=\"860\" height=\"288\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-16-29-45.png 900w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-16-29-45-300x100.png 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2016\/07\/screenshot-at-jul-12-16-29-45-768x257.png 768w\" sizes=\"(max-width: 860px) 100vw, 860px\" \/><\/a><\/p>\n<p>That\u2019s it for this post. There is a lot more to show about AWS Elastic Beanstalk in combination with a Spring Boot application which I will show in some future posts.<\/p>\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td><span class=\"reference\">Reference: <\/span><\/td>\n<td><a href=\"https:\/\/pragmaticintegrator.wordpress.com\/2016\/07\/12\/run-your-spring-boot-application-on-aws-using-elastic-beanstalk\/\">Run your Spring Boot application on AWS using Elastic Beanstalk<\/a> from our <a href=\"http:\/\/www.javacodegeeks.com\/join-us\/jcg\/\">JCG partner<\/a> Pascal Alma at the <a href=\"http:\/\/pragmaticintegrator.wordpress.com\/\">The Pragmatic Integrator<\/a> blog.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have notion of some alternative ways to achieve the same. One of these alternatives is by using AWS Elastic Beanstalk. In this post I will describe &hellip;<\/p>\n","protected":false},"author":366,"featured_media":240,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[331,30,854],"class_list":["post-58323","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops","tag-amazon-aws","tag-spring","tag-spring-boot"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Run your Spring Boot application on AWS using Elastic Beanstalk - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Run your Spring Boot application on AWS using Elastic Beanstalk - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-13T19:00:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/spring-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Pascal Alma\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/paskal_1973\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pascal Alma\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html\"},\"author\":{\"name\":\"Pascal Alma\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/a4c0bb5bfa87eb00be92c7a1d293fecf\"},\"headline\":\"Run your Spring Boot application on AWS using Elastic Beanstalk\",\"datePublished\":\"2016-07-13T19:00:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html\"},\"wordCount\":876,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/spring-logo.jpg\",\"keywords\":[\"Amazon AWS\",\"Spring\",\"Spring Boot\"],\"articleSection\":[\"DevOps\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html\",\"name\":\"Run your Spring Boot application on AWS using Elastic Beanstalk - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/spring-logo.jpg\",\"datePublished\":\"2016-07-13T19:00:42+00:00\",\"description\":\"Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/spring-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/spring-logo.jpg\",\"width\":150,\"height\":150,\"caption\":\"spring-interview-questions-answers\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2016\\\/07\\\/run-spring-boot-application-aws-using-elastic-beanstalk.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DevOps\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/devops\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Run your Spring Boot application on AWS using Elastic Beanstalk\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/a4c0bb5bfa87eb00be92c7a1d293fecf\",\"name\":\"Pascal Alma\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/53ba6f041ccc86b6efd6278d4bcffecc424dc8eeaca5593acab22ae19748f5cb?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/53ba6f041ccc86b6efd6278d4bcffecc424dc8eeaca5593acab22ae19748f5cb?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/53ba6f041ccc86b6efd6278d4bcffecc424dc8eeaca5593acab22ae19748f5cb?s=96&d=mm&r=g\",\"caption\":\"Pascal Alma\"},\"description\":\"Pascal is a senior JEE Developer and Architect at 4Synergy in The Netherlands. Pascal has been designing and building J2EE applications since 2001. He is particularly interested in Open Source toolstack (Mule, Spring Framework, JBoss) and technologies like Web Services, SOA and Cloud technologies. Specialties: JEE, SOA, Mule ESB, Maven, Cloud Technology, Amazon AWS.\",\"sameAs\":[\"http:\\\/\\\/pragmaticintegrator.wordpress.com\\\/\",\"http:\\\/\\\/www.linkedin.com\\\/in\\\/pascalalma\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/paskal_1973\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/pascal-alma\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Run your Spring Boot application on AWS using Elastic Beanstalk - Java Code Geeks","description":"Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html","og_locale":"en_US","og_type":"article","og_title":"Run your Spring Boot application on AWS using Elastic Beanstalk - Java Code Geeks","og_description":"Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have","og_url":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2016-07-13T19:00:42+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/spring-logo.jpg","type":"image\/jpeg"}],"author":"Pascal Alma","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/paskal_1973","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Pascal Alma","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html"},"author":{"name":"Pascal Alma","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/a4c0bb5bfa87eb00be92c7a1d293fecf"},"headline":"Run your Spring Boot application on AWS using Elastic Beanstalk","datePublished":"2016-07-13T19:00:42+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html"},"wordCount":876,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/spring-logo.jpg","keywords":["Amazon AWS","Spring","Spring Boot"],"articleSection":["DevOps"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html","url":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html","name":"Run your Spring Boot application on AWS using Elastic Beanstalk - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/spring-logo.jpg","datePublished":"2016-07-13T19:00:42+00:00","description":"Although I previously wrote how easy it is to get your Spring Boot application up and running on AWS by using Boxfuse I think it is good idea to have","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/spring-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/spring-logo.jpg","width":150,"height":150,"caption":"spring-interview-questions-answers"},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2016\/07\/run-spring-boot-application-aws-using-elastic-beanstalk.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"DevOps","item":"https:\/\/www.javacodegeeks.com\/category\/devops"},{"@type":"ListItem","position":3,"name":"Run your Spring Boot application on AWS using Elastic Beanstalk"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/a4c0bb5bfa87eb00be92c7a1d293fecf","name":"Pascal Alma","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/53ba6f041ccc86b6efd6278d4bcffecc424dc8eeaca5593acab22ae19748f5cb?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/53ba6f041ccc86b6efd6278d4bcffecc424dc8eeaca5593acab22ae19748f5cb?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/53ba6f041ccc86b6efd6278d4bcffecc424dc8eeaca5593acab22ae19748f5cb?s=96&d=mm&r=g","caption":"Pascal Alma"},"description":"Pascal is a senior JEE Developer and Architect at 4Synergy in The Netherlands. Pascal has been designing and building J2EE applications since 2001. He is particularly interested in Open Source toolstack (Mule, Spring Framework, JBoss) and technologies like Web Services, SOA and Cloud technologies. Specialties: JEE, SOA, Mule ESB, Maven, Cloud Technology, Amazon AWS.","sameAs":["http:\/\/pragmaticintegrator.wordpress.com\/","http:\/\/www.linkedin.com\/in\/pascalalma","https:\/\/x.com\/https:\/\/twitter.com\/paskal_1973"],"url":"https:\/\/www.javacodegeeks.com\/author\/pascal-alma"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/58323","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/366"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=58323"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/58323\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/240"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=58323"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=58323"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=58323"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}