<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Joseph Ayobami</title>
    <description>The latest articles on DEV Community by Joseph Ayobami (@mayorscript).</description>
    <link>https://dev.to/mayorscript</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F494391%2F5e320994-cb85-485b-ad18-3366dbd08296.jpg</url>
      <title>DEV Community: Joseph Ayobami</title>
      <link>https://dev.to/mayorscript</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mayorscript"/>
    <language>en</language>
    <item>
      <title>Supercharge Your Productivity with ChatGPT!</title>
      <dc:creator>Joseph Ayobami</dc:creator>
      <pubDate>Thu, 16 Feb 2023 13:18:55 +0000</pubDate>
      <link>https://dev.to/mayorscript/supercharge-your-productivity-with-chatgpt-3ca1</link>
      <guid>https://dev.to/mayorscript/supercharge-your-productivity-with-chatgpt-3ca1</guid>
      <description>&lt;p&gt;We want to be more productive and efficient as professionals and are constantly seeking for new methods to do so. You may automate activities and optimize your workflows by using ChatGPT, a strong language model.&lt;/p&gt;

&lt;p&gt;ChatGPT can help you operate more effectively and productively, whether you're a software developer, marketer, or business owner. You may increase your productivity by using ChatGPT in the following ways:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--weRyAE42--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/is13z4x2dupziwm906rh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--weRyAE42--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/is13z4x2dupziwm906rh.png" alt="ChatGPT Writing" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Writing:&lt;/strong&gt; ChatGPT enables you to produce high-quality content fast and simply, saving you time and easing the tension of writer's block. ChatGPT can assist you in writing any type of document, including reports, blogs, and emails.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VtJVdJ0t--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ye47ccablb0yl1z9f2sf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VtJVdJ0t--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ye47ccablb0yl1z9f2sf.png" alt="ChatGPT Product Managment" width="800" height="419"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product Management:&lt;/strong&gt; ChatGPT enables you to automate a variety of project management operations, including task list creation, meeting scheduling, and reminder emailing. This might assist you in maintaining organization and guiding your staff.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UOt5y4TT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/27opm7m2m1pirkbb1lba.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UOt5y4TT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/27opm7m2m1pirkbb1lba.png" alt="ChatGPT Customer Care" width="800" height="302"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customer Care:&lt;/strong&gt; ChatGPT may be used to automate customer care operations including answering frequently asked inquiries, fixing straightforward problems, and offering help to clients. This can help you give your clients better service while freeing up time for more difficult duties.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--s7M_-OQR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kveh3n686f95wmeehhef.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--s7M_-OQR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kveh3n686f95wmeehhef.png" alt="ChatGPT Personal Assistance" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Personal assistance:&lt;/strong&gt; ChatGPT may be used as a personal assistant to help you keep track of your tasks, manage your schedule, and make reminders. ChatGPT is available to you whether you want assistance with your to-do list or only a kind reminder to take a break. &lt;/p&gt;

&lt;p&gt;By using ChatGPT to automate tasks and streamline your workflows, you can boost your productivity and get more done in less time. Give it a try and see the difference it can make in your workday! &lt;/p&gt;

&lt;h1&gt;
  
  
  ChatGPT #productivity #automation #workflow #softwaredeveloper #timemanagement
&lt;/h1&gt;

</description>
      <category>chatgpt</category>
      <category>productivity</category>
      <category>timemanagem</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to deploy a Dockerized Node JS (TypeScript) Application to Amazon EC2 Service — 2023</title>
      <dc:creator>Joseph Ayobami</dc:creator>
      <pubDate>Mon, 23 Jan 2023 21:09:47 +0000</pubDate>
      <link>https://dev.to/mayorscript/how-to-deploy-a-dockerized-node-js-typescript-application-to-amazon-ec2-service-2023-jfd</link>
      <guid>https://dev.to/mayorscript/how-to-deploy-a-dockerized-node-js-typescript-application-to-amazon-ec2-service-2023-jfd</guid>
      <description>&lt;p&gt;&lt;strong&gt;1. Introduction&lt;/strong&gt;&lt;br&gt;
There are several options available once you’ve created a web application to publish it online and make it accessible to others. Elastic Compute Cloud, a well-known service, is one of the platform’s offerings from Amazon Web Services (AWS) (EC2).&lt;/p&gt;

&lt;p&gt;It’s important to have a basic grasp of EC2 and how to deploy to it because it forms the foundation for many of AWS’ other services.&lt;/p&gt;

&lt;p&gt;In this article, we’ll learn how to setup an EC2 instance, configure it, and deploy a straightforward Node.js application to it. Your Node project will be operating on AWS by the conclusion of this tutorial, and you’ll have a better grasp of how to connect with a fundamental system of AWS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Prerequisites&lt;/strong&gt;&lt;br&gt;
In order to follow through this tutorial, you’ll need the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;An AWS Account&lt;/strong&gt;&lt;br&gt;
You can checkout this tutorial on how to create an AWS account.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Node and Npm&lt;/strong&gt;&lt;br&gt;
You need to have Node and Npm installed on your computer. You can install them &lt;a href="https://nodejs.org/en/" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Docker&lt;/strong&gt;&lt;br&gt;
Docker is a very lightweight virtual machine that comes with all the applications and dependencies needed to run your program. Docker allows us to group our programs into manageable parts that may be run everywhere Docker is deployed. This eliminates the excuse “but it works on my computer!”&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Since i won’t be going into great detail, this tutorial will presume a basic understanding of Docker. If you want to learn more about docker, i’ll create an article very soon where i’ll teach you how to use docker for production ready applications.&lt;/p&gt;

&lt;p&gt;Now, make sure you have docker downloaded on your machine. You can download &lt;a href="https://www.docker.com/" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Node Application&lt;/strong&gt;
You need a server application running. Let’s qucikly setup a node application.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Open the terminal and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir node-ec2 
cd node-ec2 
npm init --yes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Next, let’s install express and typescript:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install express --save
npm i -D typescript @types/express @types/node ts-node
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Generate a tsconfig.json:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx tsc --init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Go to the package.json file once these libraries have been installed to see a new dev dependencies object and also update it to have the build and start script:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "name": "node-ec2",
  "version": "1.0.0",
  "main": "index.ts",
  "scripts": {
    "build": "tsc --project ./",
    "start": "npm run build &amp;amp;&amp;amp; node build/index.js"
  },
  "license": "MIT",
  "dependencies": {
    "express": "^4.18.2"
  },
  "devDependencies": {
    "@types/express": "^4.17.15",
    "@types/node": "^18.11.18",
    "ts-node": "^10.9.1",
    "typescript": "^4.9.4"
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open your prefered editor to create an &lt;em&gt;&lt;strong&gt;index.js&lt;/strong&gt;&lt;/em&gt; file to setup Express and define a request handler.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import express, {Express, Request, Response} from "express";
const app: Express = express();
const port = 8080;

app.get('/status', (req: Request, res: Response) =&amp;gt; {
    res.send({status: "Server is healthy!"});
});

app.listen(port, () =&amp;gt; {
    console.log(`App is running at http://localhost:${port}!`)
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We can start up the server by running:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm start
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When we navigate to &lt;a href="http://localhost:8080/status" rel="noopener noreferrer"&gt;http://localhost:3000/status&lt;/a&gt;, we ought to receive a response with the status “Server is healthy!” As soon as that succeeds, be careful to shutdown the server by pressing CTRL+C.&lt;/p&gt;

&lt;p&gt;Let’s create a Docker image of our straightforward Node application so that it can be deployed to EC2.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;3. Dockerizing our Node Application&lt;/strong&gt;&lt;br&gt;
Create a file and name it &lt;em&gt;Dockerfile&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;FROM node:16-alpine

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

COPY . .

RUN npm run build

EXPOSE 8080
CMD [ "node", "build/index.js" ]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We can use the above docker script for simple node applications. Now let’s build the docker image using the command below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker build . -t node-ec2
docker run -p 8080:8080 node-ec2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you navigate to &lt;a href="http://localhost:8080/status" rel="noopener noreferrer"&gt;http://localhost:3000/status&lt;/a&gt;, we ought to receive a response as before. Now shutdown the server by pressing CTRL+C.&lt;/p&gt;

&lt;p&gt;Finally, let’s push our docker image to &lt;a href="https://hub.docker.com/" rel="noopener noreferrer"&gt;Docker Hub&lt;/a&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker login # Enter your Docker Hub credentials here
docker tag node-ec2 &amp;lt;YOUR_DOCKER_USERNAME&amp;gt;/node-ec2
docker push &amp;lt;YOUR_DOCKER_USERNAME&amp;gt;/node-ec2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;p&gt;&lt;strong&gt;Deployment to EC2&lt;/strong&gt;&lt;br&gt;
Now that we’ve dockerized our application, we need to setup an ec2 instance for it to run on.&lt;/p&gt;

&lt;p&gt;Head over to AWS and sign in.&lt;/p&gt;

&lt;p&gt;On the navigation bar, click on the search box, search for &lt;em&gt;EC2&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;On you open up the EC2 page, you’ll have a page that looks like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6vkawpyfkexag97o3wem.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6vkawpyfkexag97o3wem.png" alt="Ec2 dashboard" width="720" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on &lt;em&gt;Launch Instance&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;On the next page, you should have a view like below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxh109eg5654h59p6c6hf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxh109eg5654h59p6c6hf.png" alt="Launch Ec2 instanc" width="720" height="336"&gt;&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;&lt;strong&gt;AMIs&lt;/strong&gt;&lt;br&gt;
Here is where we choose the AMI, or short for Amazon Machine Image. An AMI is a server that may be purchased in a variety of configurations.&lt;/p&gt;

&lt;p&gt;For instance, we might choose an Amazon Linux 2 AMI, or if you scroll down, you’ll find other instances with Ubuntu running on them.&lt;/p&gt;

&lt;p&gt;Each AMI is a copy of a machine’s operating system and possibly some other software that has been frozen.&lt;/p&gt;

&lt;p&gt;Click on &lt;em&gt;Browse more AMIs&lt;/em&gt; to view the list of several AMIs available.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F041zfxf8hxdloyxrv6kb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F041zfxf8hxdloyxrv6kb.png" alt="Ec2 Amis" width="720" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To make things simple, we can utilize this to create an EC2 instance that is already set up using Docker!&lt;/p&gt;

&lt;p&gt;To do this, we need to click “AWS Marketplace AMIs” on the left and then type “ECS” into the search bar. Several results ought to come up, however we want the “ECS Optimized Amazon Linux 2” image.&lt;/p&gt;

&lt;p&gt;This image, which includes Docker, is designed specifically for running containers. The next page will open after you click “Select” on the selected image:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F70d7a10j7wozealzzd7x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F70d7a10j7wozealzzd7x.png" alt="Select ami" width="720" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After clicking Select, a pop up will show, then you’ll click on Continue.&lt;/p&gt;

&lt;p&gt;Enter your instance name. For example, node-ec2.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feiq60xsr4oyp1ir7brzz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feiq60xsr4oyp1ir7brzz.png" alt="Launch instance" width="720" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Instance Types&lt;/strong&gt;&lt;br&gt;
We decide what kind of instance we want on the next view. In general, this determines the resources that will be made available to the server that we’re launching, with scaling fees for machines with higher performance.&lt;/p&gt;

&lt;p&gt;Scroll down the page to select the instance type — It is advised to utilize the &lt;em&gt;t2.micro&lt;/em&gt; instance type since it qualifies for the free tier:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foqwhsswcth4vacg9qa6n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foqwhsswcth4vacg9qa6n.png" alt="Free tier instance" width="720" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Pair&lt;/strong&gt;&lt;br&gt;
It is important that you create a key pair before launching the application in order to be able to access it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgf1k3cf46b1rjnj7xod0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgf1k3cf46b1rjnj7xod0.png" alt="Key pair" width="720" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on create key pair and you should have a pop up like the one below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa7sot3rjpii4jico2vc9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa7sot3rjpii4jico2vc9.png" alt="Create key pair" width="720" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter your key pair name. Leave the Private key file format as .pem. Once you click on &lt;em&gt;Create key pair&lt;/em&gt;, It will be downloaded automatically.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Network Settings (Security Group)&lt;/strong&gt;&lt;br&gt;
This signifies that any traffic utilizing the &lt;strong&gt;TCP protocol&lt;/strong&gt; that enters through &lt;strong&gt;port 22&lt;/strong&gt; is permitted &lt;strong&gt;(0.0.0.0/0 denoting any location)&lt;/strong&gt;. To enable everyone to use our app at port 8080, we must add one more rule.&lt;/p&gt;

&lt;p&gt;Make sure you select the check boxes for allowing Http and Https from anywhere.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb8c165ulrw26vbzibarf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb8c165ulrw26vbzibarf.png" alt="Network group settings" width="720" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;There are some other advanced configurations that you can set up depending on your app needs. We don’t need to do that for now.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can now go ahead to launch the instance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv54azv2pzdk6vrboefkp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv54azv2pzdk6vrboefkp.png" alt="Launch Instance" width="720" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the next page that shows, please wait patiently for the instance to be launched successfuly.&lt;/p&gt;

&lt;p&gt;Once the instance is launched successfully, you’ll see a page like the one below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsxs3s6p1bkjclfzhwiij.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsxs3s6p1bkjclfzhwiij.png" alt="Launch instance success" width="720" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Click on the Instance Id.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Connecting to Your EC2 Instance&lt;br&gt;
Once you click on the Intance Id, a new tab is open and you see a page like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9oogbwmoh0ddrofbldk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9oogbwmoh0ddrofbldk.png" alt="Connect to Ec2 instance" width="720" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on the check box to view the instance details. On the section below, copy the Instant Public Ipv4 address.&lt;/p&gt;

&lt;p&gt;Now, go to your computer terminal and enter the following commands:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;chmod 400 &amp;lt;NAME_OF_KEYPAIR_FILE&amp;gt;
ssh -i &amp;lt;NAME_OF_KEYPAIR_FILE&amp;gt; ec2-user@&amp;lt;PUBLIC_IPV4_ADDRESS&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once you’re logged into the server, enter the docker command below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run -p 8080:8080 &amp;lt;YOUR_DOCKER_USERNAME&amp;gt;/node-ec2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;For M1 Mac users, you might experience an error like this:&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and no specific platform was requested
exec /usr/local/bin/docker-entrypoint.sh:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you have an error like the one above, just run the docker command like below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run --platform linux/amd64 -d -p 8080:8080 &amp;lt;YOUR_DOCKER_USERNAME&amp;gt;/node-ec2

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You should have your app running successfully by now. You’ll be able to reach the instance using the same address you used to SSH into the instance. Simply navigate in your browser to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;Public_Ipv4_Address&amp;gt;:8080/status
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;br&gt;
When it comes to securing your EC2 instance, there are several measures you should put in place.&lt;/p&gt;

&lt;p&gt;Using a &lt;em&gt;.pem&lt;/em&gt; file: A pem file allows you to be able to authenticate to the instance direclty without public access.&lt;br&gt;
Checking the security groups: You can make your instance available only via SSH or HTTPS protocol.&lt;br&gt;
There are other measures to put in place for securing our instance, but that’ll be a seperate tutorial for now.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Other AMIs&lt;/strong&gt;&lt;br&gt;
There are hundreds of different AMIs, many of which come from different communities and have pre-installed applications. It’s worth looking through them to see if there’s a simple method to set up anything you’ve wanted to work with.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Adding a Custom Domain&lt;/strong&gt;&lt;br&gt;
You might want to create a domain name and direct it at your application now that it is operating on a server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Since RDS (AWS’ database service) is essentially simply highly optimized EC2 instances with a lovely dashboard, EC2 is the backbone of many AWS services.&lt;/p&gt;

&lt;p&gt;Understanding this foundational tool in AWS’ armory will inevitably lead to the discovery of fresh ways to carry out concepts.&lt;/p&gt;

&lt;p&gt;In this article, we’ve used Express to build a straightforward Node.js application, dockerized it, set up EC2 for deployment, and then deployed it to the EC2 instance.&lt;/p&gt;

&lt;p&gt;If you want to learn how to architect an EC2 instance, with load balancers, docker and Amazon RDS, i’ll be uploading another tutorial soon.&lt;/p&gt;

&lt;p&gt;Kindly follow me to stay updated on my latest tutorials.&lt;/p&gt;

&lt;p&gt;Cheers! 🥷🏻&lt;/p&gt;

&lt;h1&gt;
  
  
  docker #nodejs #ec2 #express #typescript
&lt;/h1&gt;

</description>
      <category>discuss</category>
    </item>
    <item>
      <title>How to connect your domain from Namecheap to Amazon Route 53</title>
      <dc:creator>Joseph Ayobami</dc:creator>
      <pubDate>Mon, 23 Jan 2023 20:43:53 +0000</pubDate>
      <link>https://dev.to/mayorscript/how-to-connect-your-domain-from-namecheap-to-amazon-route-53-4g3g</link>
      <guid>https://dev.to/mayorscript/how-to-connect-your-domain-from-namecheap-to-amazon-route-53-4g3g</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Do You Know — No one wants a Domain with thier name on it owned by somebody else 💡&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So you just bought a domain name on &lt;a href="http://namecheap.com/"&gt;Namecheap&lt;/a&gt; and you’ve been wondering how on earth would you be able to host it on &lt;a href="http://aws.amazon.com/"&gt;Amazon&lt;/a&gt;, then this tutorial is for you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Route 53?&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Amazon Route 53&lt;/strong&gt; is a highly accessible and scalable Domain Name System service. Domain registration, DNS routing, and h=Health testing are the three major functions that you can execute using Route 53 in any order. You must choose a name for your website, such example.com. You can register a domain name, also referred to as a name for your website or web application, on Route 53. The purpose of Route 53 is to manage DNS for devices and services placed on Amazon’s public cloud.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now that you know what Route 53 does, you might be having questions like:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Should I choose Route 53 as my hosting provider?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Well, maybe you have to read the above definition of Route 53 again 🤓.&lt;/p&gt;

&lt;p&gt;Now let’s cut to the chase…&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to connect my domain to Route 53?&lt;/strong&gt;&lt;br&gt;
Firstly, you have to purchase a domain name on Namecheap.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;FYI — Namecheap is one of the best domain provider out there. The prices are flexible and their services are quite good.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This tutorial won’t be showing you how to purchase a domain name. Our focus is to connect an existing domain to Route 53. Once you have purchased a domain, sign in to your namecheap account and click on Domain List on the left sidebar:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--a1QsEN_e--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zobh3mll2mazn8v7ci9e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--a1QsEN_e--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zobh3mll2mazn8v7ci9e.png" alt="Namecheap dashboardn" width="720" height="481"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here, you’ll see the list of domains you’ve purchased so far.&lt;/p&gt;

&lt;p&gt;_You’d noticed I had to blur all my domains.. I don’t want to be hacked …hahah&lt;br&gt;
_&lt;br&gt;
Click on &lt;strong&gt;Manage&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;On the screen below, select &lt;strong&gt;Custom DNS&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xueEcq2A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lbavk4e8gdq2icvdkml7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xueEcq2A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lbavk4e8gdq2icvdkml7.png" alt="Namecheap custom DNS" width="720" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, sign in to your &lt;strong&gt;AWS account&lt;/strong&gt;, on the search bar, search for Route 53.&lt;/p&gt;

&lt;p&gt;On the next page, click on &lt;strong&gt;Hosted Zone&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dC16ddWm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x8ei0shz3qx3g8e4g4bh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dC16ddWm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x8ei0shz3qx3g8e4g4bh.png" alt="Route 53 dashboard" width="720" height="312"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on &lt;strong&gt;Create hosted zone&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--W2JODaEU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d6kx6jkgje8opviukdph.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--W2JODaEU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d6kx6jkgje8opviukdph.png" alt="Create hosted zone" width="720" height="325"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the next page, enter your domain name in the input box and click on &lt;strong&gt;Create hosted zone&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zICoi0w8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ydl4hoa9dtk523pqxaqv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zICoi0w8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ydl4hoa9dtk523pqxaqv.png" alt="Hosted zone" width="720" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait for some seconds. Once it’s created, in the page that looks like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JRuQPu4R--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v1is7iri5ketrvwmt3rv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JRuQPu4R--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v1is7iri5ketrvwmt3rv.png" alt="Created hosted zone" width="720" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Copy the NS records, go back to Namecheap and enter the NS records in the Nameserver input field in order:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9AbjmTFX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s85hzxt04te699g3cynm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9AbjmTFX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s85hzxt04te699g3cynm.png" alt="Route 53 NS records to Namecheap" width="720" height="191"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click the green checkmark to save it.&lt;/p&gt;

&lt;p&gt;Viola!! You have successfully connected your Namecheap Domain to Route 53.&lt;/p&gt;

&lt;p&gt;You can go further to create several records like the A, TXT, etc on Route 53.&lt;/p&gt;

&lt;p&gt;Cheers! 🥷🏻&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>namecheap</category>
      <category>aws</category>
      <category>domain</category>
    </item>
    <item>
      <title>Deploy a Next Js Application on Amazon Amplify Service</title>
      <dc:creator>Joseph Ayobami</dc:creator>
      <pubDate>Sun, 15 Jan 2023 00:10:13 +0000</pubDate>
      <link>https://dev.to/mayorscript/deploy-a-next-js-application-on-amazon-amplify-service-1h48</link>
      <guid>https://dev.to/mayorscript/deploy-a-next-js-application-on-amazon-amplify-service-1h48</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Next.js is a flexible React framework that gives you building blocks to create fast web applications. Source — &lt;a href="https://nextjs.org/learn/foundations/about-nextjs/what-is-nextjs"&gt;Next Js&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since this tutorial isn’t an introduction to Next js, i wouldn’t go into much details on Next Js. You can read more &lt;a href="https://nextjs.org/"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I believe you already have some knowledge on Next Js, and you’re trying to deploy your application to Amazon Amplify.&lt;/p&gt;




&lt;h2&gt;
  
  
  Amplify
&lt;/h2&gt;

&lt;p&gt;Frontend web and mobile developers can quickly create, launch, and host full-stack applications on AWS with the help of AWS Amplify. It’s a comprehensive solution that gives developers the freedom to take advantage of the breadth of AWS services as use cases change. Cloud knowledge is not required.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisite
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Have a basic knowledge on Next Js, CLI and Git.&lt;/li&gt;
&lt;li&gt;Have an AWS account. You can create an account here if you don’t have one.&lt;/li&gt;
&lt;li&gt;Have Node and NPM installed. You can install from here.&lt;/li&gt;
&lt;li&gt;Have Git installed on your computer.&lt;/li&gt;
&lt;li&gt;Your prefered code editor.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Setup a basic Next Js Application
&lt;/h2&gt;

&lt;p&gt;We need to have a next js application running.&lt;/p&gt;

&lt;p&gt;First, let’s create a new next js application. Go over to the terminal and enter the commands below:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Note: I’m using Yarn package manager in this tutorial. You can subsitute it with pnpm or npx.&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yarn create next-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Enter your project name and follow the prompt. You have options to choose if you want to use TypeScript and EsLint with your application. After the installation is complete, run the command below to run the app on your local environment:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yarn run dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open up &lt;a href="http://localhost:3000"&gt;http://localhost:3000&lt;/a&gt; to view your application in your browser.&lt;/p&gt;

&lt;p&gt;You should see this screen below, if you’ve installed everything correctly:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1jFDS036--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/od6bchxg2rudc9n6n6ld.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1jFDS036--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/od6bchxg2rudc9n6n6ld.png" alt="New Next js App" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Deploy to Github
&lt;/h2&gt;

&lt;p&gt;Sign in to your github account and create an empty repository.&lt;/p&gt;

&lt;p&gt;On your terminal, add the following commands to push our sample code to the created repo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add remote origin &amp;lt;YOUR_GITHUB_URL_&amp;gt;
git remote set-url origin &amp;lt;YOUR_GITHUB_URL_&amp;gt;
git push origin main
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once you have pushed the code to your repo. Then we can proceed to deploying to amplify.&lt;/p&gt;

&lt;h2&gt;
  
  
  Amplify
&lt;/h2&gt;

&lt;p&gt;Sign in to your AWS account.&lt;/p&gt;

&lt;p&gt;In the search bar, search for &lt;strong&gt;Amplify&lt;/strong&gt; and click on &lt;strong&gt;AWS Amplify.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You should see something like this in the next page:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--u19cJsNE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jy1qu4mtnqxatfsx4aal.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--u19cJsNE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jy1qu4mtnqxatfsx4aal.png" alt="Amplify" width="800" height="401"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you click on &lt;strong&gt;&lt;em&gt;Get Started&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;As i have explained initially, amplify really gives us awesome features to develop full stack apps. Especially developing a backend application for an existing app.&lt;/p&gt;

&lt;p&gt;On the section below, there are two options, &lt;strong&gt;Amplify Studio **and **Amplify Hosting&lt;/strong&gt;. We only need &lt;strong&gt;Amplify Hosting&lt;/strong&gt; for this tutorial. We can use the &lt;strong&gt;Amplify Hosting&lt;/strong&gt; to deploy React, Vue and Js apps. We’re deploying a Next js app, so we’re good to go.&lt;/p&gt;

&lt;p&gt;Click on &lt;strong&gt;&lt;em&gt;Get Started&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;On the next page that shows, you should see a page like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cUcdxdom--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g8nfk0sc2l09k8cxe1gl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cUcdxdom--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g8nfk0sc2l09k8cxe1gl.png" alt="Amplify get started" width="800" height="401"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Select &lt;strong&gt;&lt;em&gt;Github&lt;/em&gt;&lt;/strong&gt; to connect your repository to host your web app. As you can see, we have several other git repos, but for now, our focus is only Github.&lt;/p&gt;

&lt;p&gt;Click on &lt;strong&gt;&lt;em&gt;Continue&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;On the next page, it’s asks you to login to you github account:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NCN8l6yF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/axnbbtm5c8wg2cpjcp2z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NCN8l6yF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/axnbbtm5c8wg2cpjcp2z.png" alt="Github login on amplify" width="800" height="401"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Select the existing repo in the dropdown. Then select the git branch you want to deploy from in the Branch dropdown. In our own case, we’ll select main.&lt;/p&gt;

&lt;p&gt;Click on Next. You should see the next screen below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TNyREM1T--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/214uuhr71s68kjvlzfjf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TNyREM1T--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/214uuhr71s68kjvlzfjf.png" alt="Select github branch amplify" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Note: You can click on the advanced settings if you have a Dockerized application. Also, you can edit the build settings to suit your app needs.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Click on Next. On the next screen below, click on Save and deploy.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9NWgcZcq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iza72q48n730sx80s1ar.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9NWgcZcq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iza72q48n730sx80s1ar.png" alt="Amplify next config" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now the app creation is in progress. You should see a screen like below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--364inx7N--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xbb0pbku6g37cccmdwnk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--364inx7N--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xbb0pbku6g37cccmdwnk.png" alt="Amplify create app" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the next screen, you should wait patiently for your app to be deployed successfully. Once it’s deployed, you’ll see a screen like the one below — You can now click on the link to your app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HaxLbrd6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n1vu474bvf0q0zho61e0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HaxLbrd6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n1vu474bvf0q0zho61e0.png" alt="Amplify app deploy" width="800" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kudos Ninja 👏🏻…We have successfully deployed our Next Js app to Amplify.&lt;/p&gt;

&lt;p&gt;Now this is one of the most easiest thing Amplify has to offer. There are tons of other things you can do with Amplify like i’ve mentioned earlier. I’ll probably have some other tutorials on that soon.&lt;/p&gt;

&lt;p&gt;Cheers! 🥷🏻&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>nextjs</category>
      <category>node</category>
      <category>amplify</category>
    </item>
  </channel>
</rss>
