{"id":10177,"date":"2022-02-17T08:17:50","date_gmt":"2022-02-17T08:17:50","guid":{"rendered":"https:\/\/blog.cloudthat.com\/?p=10177"},"modified":"2024-06-25T11:04:37","modified_gmt":"2024-06-25T11:04:37","slug":"aws-app-runner-a-guide-for-deploying-web-applications","status":"publish","type":"blog","link":"https:\/\/www.cloudthat.com\/resources\/blog\/aws-app-runner-a-guide-for-deploying-web-applications","title":{"rendered":"AWS App Runner: A Guide for deploying Web Applications"},"content":{"rendered":"<table style=\"height: 254px;\" border=\"3\" width=\"475\">\n<tbody>\n<tr>\n<td><strong><span style=\"color: #000080;\">TABLE OF CONTENT<\/span><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#introduction\">1. Introduction <\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#features\">2. Features<\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#highlevelarchitecturediagram\">3. High-Level Architecture Diagram <\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#simplesteps\">4. Simple steps for creating an App Runner Service<\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#viewlogs\">6. View Logs of the Service <\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#benefits\">7. Benefits<\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#usecases \">8. Use Cases<\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#conclusion\">8. Conclusion<\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#aboutcloudthat \">9. About CloudThat<\/a><\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong><a href=\"#FAQs\">10. Frequently Asked Questions<\/a><\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h1><\/h1>\n<h1><\/h1>\n<p>&nbsp;<\/p>\n<h1><\/h1>\n<h1 id=\"introduction\">Introduction<\/h1>\n<p>AWS recently launched a new service called App Runner. This fully managed containerized application service helps build, deploy, and run web applications, microservices, and APIs within minutes from the source code or using Container Image.<\/p>\n<p>AWS manages the underlying infrastructure and resources by adhering to best security practices by providing the automatic integration and delivery pipeline with fully managed operations, high performance, scalability, and security. Currently, AWS App Runner is supported in five regions: US East (N. Virginia), US East (Ohio), US West (Oregon), Europe (Ireland), and Asia Pacific (Tokyo).<\/p>\n<p>AWS App Runner provides per-second billing and will get a public endpoint with a verified TLS certificate with minimal steps. App Runner can use our existing containers or the integrated container build service to deploy applications directly from the code repository.<\/p>\n<p>Read more about <a href=\"https:\/\/blog.cloudthat.com\/introduction-to-containers-on-aws\/?utm_source=blog-website&amp;utm-medium=text-link&amp;utm_campaign=introduction-to-containers-on-aws\/\" target=\"_blank\" rel=\"noopener\"><strong>AWS containers in this blog.<\/strong><\/a><\/p>\n<p>AWS App Runner also works with AWS Copilot to containerize the application and automate other services like Amazon DynamoDB.<\/p>\n<h1 id=\"features\">Features<\/h1>\n<ul>\n<li>Automatic deployments<\/li>\n<li>Load Balancing<\/li>\n<li>Autoscaling<\/li>\n<li>Secure by Design<\/li>\n<li>Logs and metrics<\/li>\n<\/ul>\n<h1 id=\"highlevelarchitecturediagram\"><span lang=\"EN-US\">High-Level Architecture Diagram:<\/span><\/h1>\n<p><a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10178\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun1.png\" alt=\"AWS App Runner\" width=\"867\" height=\"370\" \/><\/a><\/p>\n<p><em>Image Source: https:\/\/docs.aws.amazon.com\/<\/em><\/p>\n<h1 id=\"simplesteps\"><span lang=\"EN-US\">Simple steps for creating an App Runner Service:<\/span><\/h1>\n<p><a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10179\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun2.png\" alt=\"AWS App Runner\" width=\"969\" height=\"286\" \/><\/a><\/p>\n<h2>1. Choose the Source Connection:<\/h2>\n<p>There are two options available for source: AWS Container Registry or GitHub Repository.<\/p>\n<ul>\n<li>From the source and deployment page, select <strong>Source code repository <\/strong>and click on <strong>Add new <\/strong>for connecting your GitHub repository with AWS<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10180\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun3.png\" alt=\"AWS App Runner \" width=\"631\" height=\"306\" \/><\/a><\/li>\n<li>Enter your GitHub credentials when prompted and choose the <strong>repository<\/strong> and <strong>branch name<\/strong><\/li>\n<\/ul>\n<h2>2. Deployment Settings:<\/h2>\n<ul>\n<li>In Deployment Settings, select <strong>Automatic<\/strong> as the deployment trigger<\/li>\n<\/ul>\n<h2>3. Configure Build and Runtime:<\/h2>\n<ul>\n<li>In the <strong>Configure build<\/strong> the page, you can use a configuration file named <strong>yaml<\/strong> or specify the parameters manually<\/li>\n<li>Here I am specifying manually as below:<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun4.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10181\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun4.png\" alt=\"AWS App Runner\" width=\"631\" height=\"383\" \/><\/a><\/li>\n<\/ul>\n<h2>4. Configure Service:<\/h2>\n<ul>\n<li>In <strong>Configure service <\/strong>page, give the service name, CPU, and memory required for the application, and we can configure environment variables if to be used in the application.<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun5.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10182\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun5.png\" alt=\"AWS App runner\" width=\"631\" height=\"276\" \/><\/a><\/li>\n<li>In Autoscaling Configuration, we can choose the number of instances required based on the requests coming to the application. I am selecting default settings as of now<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun6.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10183\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun6.png\" alt=\"AWS App runner\" width=\"631\" height=\"330\" \/><\/a><\/li>\n<li>I\u00a0am leaving the health check settings as default, where App Runner performs Health checks on TCP ports of the application<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun7.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10185\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun7.png\" alt=\"AWS App Runner\" width=\"631\" height=\"410\" \/><\/a><\/li>\n<li>You can create an IAM service role for specific permissions to work with the application and can choose an AWS managed encryption key or custom encryption key<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun81.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10186\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun81.png\" alt=\"AWS App Runner\" width=\"631\" height=\"265\" \/><\/a><\/li>\n<li>On the next page, review all the configurations and click on <strong>Create &amp; deploy<\/strong><\/li>\n<li>The creation takes a couple of minutes, and after that, you will be able to find the URL of the application in the console and check the URL in the web browser to see whether the application is accessible<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun9.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10187\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun9.png\" alt=\"AWS App Runner\" width=\"631\" height=\"156\" \/><\/a><br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun10.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10188\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun10.png\" alt=\"AWS app runner\" width=\"631\" height=\"230\" \/><\/a><\/li>\n<\/ul>\n<h1 id=\"viewlogs\">View Logs of the Service:<\/h1>\n<p>In the Service dashboard, you will be able to see below logs:<\/p>\n<ul>\n<li>Event log: Displays the latest events and the lifecycle of the App Runner Service<\/li>\n<li>Deployment logs: Displays the log stream for each of the deployments for the service<\/li>\n<li>Application logs: Displays the output of the web application deployed in App Runner<br \/>\n<a href=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun11.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10189\" src=\"https:\/\/content.cloudthat.com\/resources\/wp-content\/uploads\/2022\/11\/Apprun11.png\" alt=\"AWS App Runner\" width=\"631\" height=\"311\" \/><\/a><\/li>\n<\/ul>\n<h1 id=\"benefits\">Benefits:<\/h1>\n<ul>\n<li>Easy to Use<\/li>\n<li>Scales with traffic<\/li>\n<li>Saves time<\/li>\n<\/ul>\n<h1 id=\"usecases\">Use Cases<\/h1>\n<ul>\n<li>Frontend and Backend web applications<\/li>\n<li>Microservices and APIs<\/li>\n<li>Rapid production deployments<\/li>\n<\/ul>\n<h1 id=\"conclusion\">Conclusion<\/h1>\n<p>AWS App Runner helps developers deploy the application in minimal steps without intervening with the developer in infrastructure and resource selection, providing better security, monitoring, and high application availability.<\/p>\n<p>One can make the best use of App Runner to deploy applications without worrying about configuring servers, security, and scalability issues. We have learned how to deploy a simple web application right from source code. To know about newly launched AWS services in 2021, here is a blog on <a href=\"https:\/\/blog.cloudthat.com\/aws-reinvent-2021-highlights-part-i\/?utm_source=blog-website&amp;utm-medium=text-link&amp;utm_campaign=aws-reinvent-2021-highlights-part-i\/\" target=\"_blank\" rel=\"noopener\"><strong>AWS re:Invent 2021 highlights.\u00a0<\/strong><\/a><\/p>\n<h1 id=\"aboutcloudthat\"><a href=\"https:\/\/www.cloudthat.com\/\" target=\"_blank\" rel=\"noopener\">About CloudThat<\/a><\/h1>\n<p>As a pioneer in the Cloud consulting realm,\u00a0<strong><a href=\"https:\/\/www.cloudthat.com\/\">CloudThat<\/a>\u00a0<\/strong>is AWS (Amazon Web Services) Advanced Consulting Partner, AWS authorized Training Partner, Microsoft Gold Partner,\u00a0and Winner of the Microsoft Asia Superstar Campaign for India: 2021. We are on a mission to build\u00a0a robust\u00a0cloud computing ecosystem by disseminating\u00a0knowledge on technological intricacies within the cloud space.\u00a0Our blogs, webinars,\u00a0case studies, and white papers\u00a0enable all the stakeholders in the cloud computing sphere to advance in their businesses.<\/p>\n<p>To get started, go through\u00a0our\u00a0<a href=\"https:\/\/www.cloudthat.com\/expert-advisory\/?utm_source=blog-website&amp;utm-medium=text-link&amp;utm_campaign=expert-advisory\"><strong>Expert Advisory<\/strong>\u00a0<\/a>page\u00a0and<strong>\u00a0<a href=\"https:\/\/www.cloudthat.com\/managed-services-packages\/\">Managed Services Package<\/a>\u00a0<\/strong>that is\u00a0<strong><a href=\"https:\/\/cloudthat.com\/?utm_source=blog-website&amp;utm-medium=text-link&amp;utm_campaign=cloudthat.com\/\">CloudThat<\/a>\u2019<\/strong>s\u00a0offerings. Then, you can quickly get in touch with our highly accomplished team of experts to carry out your migration needs. Feel free to drop a comment or any queries that you have about AWS App Runner, containers, or any other AWS services, and we will get back to you quickly.<\/p>\n<h1 id=\"FAQs\">10. Frequently Asked Questions<\/h1>\n<ul>\n<li>\n<h3>What is app Runner in AWS?<\/h3>\n<\/li>\n<\/ul>\n<p>AWS app Runner is the darling of developers who wish to deploy containerized web applications and Application Program Interface (APIs). Basically, it is a fully managed service that demands no prior infrastructure experience. AWS App runner eases the developers from the stress of worrying about servers or scaling and lets them to focus on application development tasks.<\/p>\n<ul>\n<li id=\"exacc_sP8NYrWHF5ieseMP5qiayAE5\" class=\"iDjcJe IX9Lgd wwB5gf\">\n<h3>When was AWS app Runner released?<\/h3>\n<\/li>\n<\/ul>\n<div class=\"YsGUOb\">\u00a0AWS app Runner&#8217;s general availability was made on\u00a0May 18, 2021.<\/div>\n<ul>\n<li>\n<h3>How do I use Apprunner?<\/h3>\n<\/li>\n<\/ul>\n<p>The following source from AWS provides a detailed step-by-step approach to executing AWS app Runner.<\/p>\n<div><a href=\"https:\/\/docs.aws.amazon.com\/apprunner\/latest\/dg\/getting-started.html\">https:\/\/docs.aws.amazon.com\/apprunner\/latest\/dg\/getting-started.html\u00a0<\/a><\/div>\n<p>&nbsp;<\/p>\n","protected":false},"author":248,"featured_media":10294,"parent":0,"comment_status":"open","ping_status":"open","template":"","blog_category":[5295,3606,3607],"user_email":"bhanuprakashr@cloudthat.com","published_by":"324","primary-authors":"","secondary-authors":"","acf":[],"_links":{"self":[{"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/blog\/10177"}],"collection":[{"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/users\/248"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/comments?post=10177"}],"version-history":[{"count":1,"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/blog\/10177\/revisions"}],"predecessor-version":[{"id":45792,"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/blog\/10177\/revisions\/45792"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/"}],"wp:attachment":[{"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/media?parent=10177"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/www.cloudthat.com\/resources\/wp-json\/wp\/v2\/blog_category?post=10177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}