<?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: Afeez Adeyemo</title>
    <description>The latest articles on DEV Community by Afeez Adeyemo (@afeez_adeyemo).</description>
    <link>https://dev.to/afeez_adeyemo</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%2F2040628%2F0778bd62-f0e7-4659-9375-d3f967bbb1b6.jpg</url>
      <title>DEV Community: Afeez Adeyemo</title>
      <link>https://dev.to/afeez_adeyemo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/afeez_adeyemo"/>
    <language>en</language>
    <item>
      <title>How to create a presigned URL for an S3 bucket on AWS.</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Tue, 10 Dec 2024 20:15:55 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/how-to-create-a-presigned-url-for-an-s3-bucket-on-aws-548a</link>
      <guid>https://dev.to/afeez_adeyemo/how-to-create-a-presigned-url-for-an-s3-bucket-on-aws-548a</guid>
      <description>&lt;p&gt;This tutorial will guide us on how to create a presigned URL for an Amazon S3 (Simple Storage Service) bucket&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is S3?&lt;/strong&gt;&lt;br&gt;
S3 means Simple Storage Service on Amazon Web Services (AWS). It is a service that provides secured, scalable, durable and cost-effective object storage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;S3 Bucket&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An Amazon S3 bucket is a container for storing objects in Amazon S3. It is similar to Azure Bob container.&lt;/p&gt;

&lt;p&gt;Please follow the steps below;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create an S3 bucket&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Step 2: Upload an image&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Step 3: Create a presigned URL&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create an S3 bucket&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Log-on&lt;/strong&gt; to AWS Management Console.&lt;/li&gt;
&lt;li&gt;Search for &lt;strong&gt;S3&lt;/strong&gt; on the home page. Pick &lt;strong&gt;Buckets&lt;/strong&gt; under &lt;strong&gt;Top features&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fuyyf5fff9fj3vaxswd7b.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%2Fuyyf5fff9fj3vaxswd7b.png" alt="Search for S3" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Create bucket&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fnt1qor9c9y85aippu68f.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%2Fnt1qor9c9y85aippu68f.png" alt="Create Bucket" width="800" height="301"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give the bucket a unique &lt;strong&gt;name&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fzxxgde4pzdw1j9iz7h31.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%2Fzxxgde4pzdw1j9iz7h31.png" alt="bucket name" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For &lt;strong&gt;Object ownership ** and ensure **ACLs disabled&lt;/strong&gt; is enabled.&lt;/li&gt;
&lt;/ul&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%2Fs5pcnh4n6sts0048yfjd.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%2Fs5pcnh4n6sts0048yfjd.png" alt="Object ownership" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Block all public access&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fjfwz3r0288jfg5nvulf7.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%2Fjfwz3r0288jfg5nvulf7.png" alt="public access" width="800" height="281"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Disable &lt;strong&gt;bucket versioning&lt;/strong&gt;, and &lt;strong&gt;Add tag&lt;/strong&gt;. Give the &lt;strong&gt;key&lt;/strong&gt; a name add &lt;strong&gt;value&lt;/strong&gt;. Tags are optional, but important for cost management purposes.&lt;/li&gt;
&lt;/ul&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%2Fj7cowolcjt1ai3wru80y.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%2Fj7cowolcjt1ai3wru80y.png" alt="bucket versioning and tag" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For encryption, enable &lt;strong&gt;SSE-S3&lt;/strong&gt;, &lt;strong&gt;enable bucket key&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fig25zdadrcotlegy4p1y.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%2Fig25zdadrcotlegy4p1y.png" alt="Encryption" width="800" height="278"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Create bucket&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fatafdx7ur929rvl0wt01.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%2Fatafdx7ur929rvl0wt01.png" alt="Create bucket" width="800" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Upload an image&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the just created bucket, &lt;strong&gt;double click&lt;/strong&gt; to open it.&lt;/li&gt;
&lt;/ul&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%2Ffykogp9audvnac22tlv1.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%2Ffykogp9audvnac22tlv1.png" alt="Open bucket" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Upload&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2F0ik6oclefpe1vsouthno.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%2F0ik6oclefpe1vsouthno.png" alt="Upload" width="800" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For storage class, pick the &lt;strong&gt;standard&lt;/strong&gt; for frequently assessed data.&lt;/li&gt;
&lt;/ul&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%2Fctas88h1l06kfhf8idwo.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%2Fctas88h1l06kfhf8idwo.png" alt="storage class/standard" width="800" height="175"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Add files&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2F0rlb0leidbzzrzc6lqwh.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%2F0rlb0leidbzzrzc6lqwh.png" alt="Add files" width="800" height="164"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Browse for file that will be uploaded from your computer. Select &lt;strong&gt;open&lt;/strong&gt; to upload.&lt;/li&gt;
&lt;/ul&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%2Frtrtbs7m8rjzbtqyzehj.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%2Frtrtbs7m8rjzbtqyzehj.png" alt="Open to upload" width="800" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scroll down and &lt;strong&gt;upload&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Ftmlu0718q1l8f64edb2b.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%2Ftmlu0718q1l8f64edb2b.png" alt="Scroll down and upload" width="800" height="192"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the image to be successfully uploaded. Notice that status is &lt;strong&gt;succeeded&lt;/strong&gt;. Double click the file to open.&lt;/li&gt;
&lt;/ul&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%2Fgj8tx1n1jc02un2yifs2.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%2Fgj8tx1n1jc02un2yifs2.png" alt="Succeeded" width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fiebo7blqqwwtgbyl01jj.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%2Fiebo7blqqwwtgbyl01jj.png" alt="Open" width="800" height="273"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Boom!&lt;/strong&gt; the uploaded file is open&lt;/li&gt;
&lt;/ul&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%2Fgwkciae4p4k4cpxuphsk.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%2Fgwkciae4p4k4cpxuphsk.png" alt="Uploaded file" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Create a presigned URL&lt;/strong&gt;&lt;br&gt;
The uploaded file can be viewed VIA a presigned URL.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the uploaded file. From the &lt;strong&gt;Actions&lt;/strong&gt; drop down menu, select &lt;strong&gt;share with a presigned URL&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fgmf3mmb9tzbjr0uyaaok.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%2Fgmf3mmb9tzbjr0uyaaok.png" alt="Share with a presigned URL" width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set the &lt;strong&gt;time interval until the presigned URL expires&lt;/strong&gt;. &lt;strong&gt;Create presigned URL&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fzeju1m8d5ixmikh7j2iz.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%2Fzeju1m8d5ixmikh7j2iz.png" alt="time interval" width="800" height="523"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;copy presigned URL&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2F1j2l2afb7zv0kdctap87.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%2F1j2l2afb7zv0kdctap87.png" alt="Copy presigned URL" width="800" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Paste&lt;/strong&gt; the URL in a new tab and enter.&lt;/li&gt;
&lt;/ul&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%2Fjwtdqp9d22m2gv8v4cnu.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%2Fjwtdqp9d22m2gv8v4cnu.png" alt="Paste in new tab" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Notice you can see the uploaded file.&lt;/p&gt;

&lt;p&gt;Please drop comments and questions in comments session.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>aws</category>
      <category>cloud</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>Creating an EC2 instance on AWS and installing IIS web server on it.</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Sun, 08 Dec 2024 13:04:38 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/creating-an-ec2-instance-on-aws-and-installing-iis-web-server-on-it-3i57</link>
      <guid>https://dev.to/afeez_adeyemo/creating-an-ec2-instance-on-aws-and-installing-iis-web-server-on-it-3i57</guid>
      <description>&lt;p&gt;This tutorial demonstrates how to create an EC2 instance on Amazon Web Services (AWS) and installing IIS web server on it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is AWS&lt;/strong&gt;&lt;br&gt;
Amazon Web Services (AWS) is a comprehensive and widely used cloud platform with global reach that offers secured and cost-efficient cloud computing services i.e. Compute, Storage, Databases, Machine Learning, Networking etc. hosted in data centers located in various areas globally. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EC2 instance&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An Amazon EC2 (Elastic Compute Cloud) instance is a virtual server in the AWS cloud environment. EC2 instances are secure and scalable and are used for a wide range of applications, including web hosting, data processing, machine learning, gaming, and more.&lt;/p&gt;

&lt;p&gt;Below are the steps that will be used in this tutorial&lt;/p&gt;

&lt;p&gt;Step 1: Sign in into AWS management console and create the EC2 instance.&lt;br&gt;
Step 2: Connect to the instance.&lt;br&gt;
Step 3: Create the IIS web server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Sign in into AWS management console and create the EC2 instance.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On google, search for &lt;strong&gt;AWS management console&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fgi8rhfvfd35rm846k0st.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%2Fgi8rhfvfd35rm846k0st.png" alt="AWS management console" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sign in&lt;/strong&gt; into the console or &lt;strong&gt;Create&lt;/strong&gt; a profile.&lt;/li&gt;
&lt;/ul&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%2F0juilsbc228i37e49fqb.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%2F0juilsbc228i37e49fqb.png" alt="Sign in" width="800" height="241"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search for &lt;strong&gt;EC2&lt;/strong&gt; on the home page.&lt;/li&gt;
&lt;/ul&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%2Fpb0lfikd1zjscoyd6nqx.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%2Fpb0lfikd1zjscoyd6nqx.png" alt="Search for EC2" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;scroll down and &lt;strong&gt;launch instance&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fwtuvxl78mtmpteren86h.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%2Fwtuvxl78mtmpteren86h.png" alt="launch instance" width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give the instance a &lt;strong&gt;name&lt;/strong&gt;, you can add other tags&lt;/li&gt;
&lt;/ul&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%2Fm3ouo4ozvx88en4ac3es.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%2Fm3ouo4ozvx88en4ac3es.png" alt="name and tags" width="800" height="236"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Application and OS Images&lt;/strong&gt;, in the &lt;strong&gt;quick start&lt;/strong&gt; tab, select an OS image for your instance. Select &lt;strong&gt;Windows&lt;/strong&gt; for this tutorial.&lt;/li&gt;
&lt;/ul&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%2F957fe0y9zaebz2m5cznp.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%2F957fe0y9zaebz2m5cznp.png" alt="OS image" width="800" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the free &lt;strong&gt;Microsoft Windows server 2025 Base&lt;/strong&gt; as the &lt;strong&gt;Amazon machine image&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Ftchb8nzulkgbrijlemg3.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%2Ftchb8nzulkgbrijlemg3.png" alt="Amazon machine image" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For instance type, select &lt;strong&gt;t3.micro&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2F6hi7191guhqu8panfm28.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%2F6hi7191guhqu8panfm28.png" alt="instance type" width="800" height="258"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For key pair, &lt;strong&gt;Create new key pair&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Ftenbc01w97bcjju2m8s8.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%2Ftenbc01w97bcjju2m8s8.png" alt="Create new key pair" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give the keypair a &lt;strong&gt;name&lt;/strong&gt;, ensure key pair type is &lt;strong&gt;RSA&lt;/strong&gt; then &lt;strong&gt;craete a key pair&lt;/strong&gt;. Notice the keypair file is downloaded.&lt;/li&gt;
&lt;/ul&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%2F1rfeouzz5l37grliys26.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%2F1rfeouzz5l37grliys26.png" alt="Key pair" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scroll down to &lt;strong&gt;Firewall (security groups)&lt;/strong&gt;, select &lt;strong&gt;Ensure RDP from anywhere&lt;/strong&gt; and &lt;strong&gt;Allow HTTP from the internet&lt;/strong&gt; are both selected. This will ensure your server can be accessed anywhere over the internet.

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Launch instance&lt;/strong&gt; and wait for it to be successful.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fhl7dhrldbr027qw6t966.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%2Fhl7dhrldbr027qw6t966.png" alt="Launch instance" width="800" height="275"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Connect to the instance and create the IIS web server&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Connect to instance&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fw4ymxc8uiya4xr2m5ew8.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%2Fw4ymxc8uiya4xr2m5ew8.png" alt="Connect to instance" width="800" height="313"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the &lt;strong&gt;RDP Client&lt;/strong&gt; tab, check the &lt;strong&gt;Connect using RDP&lt;/strong&gt; and &lt;strong&gt;Download the RDP file&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fu9o2u2pymujxu6f8ryit.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%2Fu9o2u2pymujxu6f8ryit.png" alt="Download remote desktop file" width="800" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the file to download. Select &lt;strong&gt;Get password&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Futpdwu7lnaeekoa83gku.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%2Futpdwu7lnaeekoa83gku.png" alt="Get password" width="800" height="263"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Upload private key file&lt;/strong&gt;, navigate and select the key file downloaded previously. &lt;/li&gt;
&lt;/ul&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%2F3zbqm10bd63u590me6fd.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%2F3zbqm10bd63u590me6fd.png" alt="upload private key" width="800" height="215"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Decrypt password&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fmsg278zfav39vls6ylrf.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%2Fmsg278zfav39vls6ylrf.png" alt="Decrypt password" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Copy password&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2Fubqu4fuemyis0p4j1l5n.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%2Fubqu4fuemyis0p4j1l5n.png" alt="Copy password" width="800" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Open&lt;/strong&gt; the RDP file that was downloaded&lt;/li&gt;
&lt;/ul&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%2Flehrs1phd2xzuhakvogr.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%2Flehrs1phd2xzuhakvogr.png" alt="Open RDP file" width="800" height="111"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Connect&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2F70ed3phc1b8r19fr28xg.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%2F70ed3phc1b8r19fr28xg.png" alt="Connect" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Paste&lt;/strong&gt; the password previously copied. &lt;strong&gt;OK&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fbyi573ir0dsityblkqty.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%2Fbyi573ir0dsityblkqty.png" alt="Enter password" width="738" height="699"&gt;&lt;/a&gt;&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%2Fgf7nddoea8gjysa69k02.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%2Fgf7nddoea8gjysa69k02.PNG" alt="Remote desktop" width="800" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Boom&lt;/strong&gt; here comes your remote desktop.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Create the IIS web server&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search for &lt;strong&gt;PowerShell&lt;/strong&gt; on the desktop, run as Admin&lt;/li&gt;
&lt;/ul&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%2Fd2pp4xbhmw6h96c431jx.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%2Fd2pp4xbhmw6h96c431jx.PNG" alt="PowerShell" width="800" height="204"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Enter the command &lt;strong&gt;Install-WindowsFeature -Name Web-Server -IncludeManagementTools&lt;/strong&gt;. Press Enter&lt;/li&gt;
&lt;/ul&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%2Fm750bi05gq6i6flfa0x7.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%2Fm750bi05gq6i6flfa0x7.PNG" alt="Coomand" width="800" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wait&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2F3awag8ydm2olvw26ltp2.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%2F3awag8ydm2olvw26ltp2.PNG" alt="Wait" width="800" height="148"&gt;&lt;/a&gt;&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%2Fw1oz97wszye8k42trune.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%2Fw1oz97wszye8k42trune.PNG" alt="Successful" width="800" height="232"&gt;&lt;/a&gt;&lt;br&gt;
 Notice the Exit Code says successful&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Exit the remote desktop to the AWS management console. &lt;strong&gt;Select&lt;/strong&gt; the instance, &lt;strong&gt;copy&lt;/strong&gt; the public IP address.&lt;/li&gt;
&lt;/ul&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%2F6ogsp5fy2xnroyelga57.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%2F6ogsp5fy2xnroyelga57.png" alt="Copy public IP address" width="800" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Paste the IP address in a new tab on your browser.&lt;/li&gt;
&lt;/ul&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%2Fh0vpray0p5ouao83wolg.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%2Fh0vpray0p5ouao83wolg.png" alt="Paste IP address" width="800" height="116"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Press*&lt;em&gt;Enter&lt;/em&gt;* and observe the web server that was deployed&lt;/li&gt;
&lt;/ul&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%2Fjrhp6pha58tx7mbyrugy.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%2Fjrhp6pha58tx7mbyrugy.png" alt="Web server" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Notice the IIS web server was successfully accessed from the public internet.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To ensure you dont run out your credit on AWS, &lt;strong&gt;Terminate and delete Instance&lt;/strong&gt; immediately after usage.&lt;/li&gt;
&lt;/ul&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%2Flnxk3shwxzcx6cd56atu.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%2Flnxk3shwxzcx6cd56atu.png" alt="Terminate and delete instance" width="800" height="271"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I hope this was helpful. Please drop questions and comments in the comment session&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>aws</category>
      <category>cloud</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>Linux is fun with Multipass</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Tue, 19 Nov 2024 11:07:46 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/linux-is-fun-with-multipass-2e5a</link>
      <guid>https://dev.to/afeez_adeyemo/linux-is-fun-with-multipass-2e5a</guid>
      <description>&lt;p&gt;Multipass is a tool developed by Canonical that allows you to create and manage Ubuntu virtual machines (VMs) with ease. It is a container designed to provide a cloud-like experience on your local machine, making it ideal for developers who need quick access to Ubuntu environments for testing and development12.&lt;/p&gt;

&lt;p&gt;Key Features of Multipass:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cross-Platform: Available for Linux, macOS, and Windows.&lt;/li&gt;
&lt;li&gt;Quick Setup: Launches VMs with a single command, providing a fresh Ubuntu environment almost instantly.&lt;/li&gt;
&lt;li&gt;Cloud-Init Support: Allows you to configure VMs using cloud-init, similar to how you would in a public cloud.&lt;/li&gt;
&lt;li&gt;Minimal Overhead: Uses native hypervisors (KVM on Linux, Hyper-V on Windows, and QEMU on macOS) for efficient performance.&lt;/li&gt;
&lt;li&gt;File Sharing: Easily share files and folders between your host and VMs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Common Uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Development and Testing: Quickly spin up isolated environments to test applications or configurations.&lt;/li&gt;
&lt;li&gt;Learning and Experimentation: Ideal for learning Linux, trying out new software, or experimenting with different configurations without affecting your main system.&lt;/li&gt;
&lt;li&gt;Local Cloud Simulation: Create a mini-cloud on your local machine to simulate cloud deployments2.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This tutorial demonstrates how to download and deploy basic commands on multipass.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Downloading Multipass

&lt;ul&gt;
&lt;li&gt;Search for &lt;strong&gt;download multipass&lt;/strong&gt; on google.
&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%2Fp55fr7cuxodbq0xp2w7z.png" alt="Igoogle search for multipass" width="800" height="399"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Install now&lt;/strong&gt;&lt;br&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%2F8884mfz1pwlgug6wghnl.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%2F8884mfz1pwlgug6wghnl.png" alt="Install" width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the operating system of your computer&lt;br&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%2F0k1umbe0l01vg4xijljz.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%2F0k1umbe0l01vg4xijljz.png" alt="choose appropriate OS" width="800" height="381"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Launch &lt;strong&gt;multipass&lt;/strong&gt;, select any of the options&lt;br&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%2Forg0qf04uv1gdi2xw61l.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%2Forg0qf04uv1gdi2xw61l.png" alt="launch multipass" width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Executing basic commands with Multipass&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Entering the Root environment&lt;/strong&gt;. The command &lt;strong&gt;(sudo su)&lt;/strong&gt; allows users into the root environment without asking for password. This environment grants administrative rights which permits administrative commands i.e create folders/files, deleting etc.&lt;br&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%2Fqp0bwe7hzlvu977rumou.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%2Fqp0bwe7hzlvu977rumou.png" alt="Sudo su" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Navigating the file system&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;pwd&lt;/strong&gt; command. This is the printing work directory command. This enables you find your current location starting from the home. More like showing you direction to your current location starting from home on a google map.
&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%2Ffpkiwx3dd0q4if4r3op4.png" alt="pwd" width="800" height="410"&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;mkdir name&lt;/strong&gt; command. This is the create a directory command that creates the directory with unique name given. This is similar to create a cabinet/resource group that can be further partitioned used to store files or similar items.
&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%2F25z16mypmr0rbonwrv67.png" alt="mkdir" width="800" height="418"&gt;
This has created 2 file - &lt;strong&gt;afeezspace1&lt;/strong&gt; and &lt;strong&gt;afeezspace2&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;cd&lt;/strong&gt; command. This is the change directory command which enables a user to enter into a pre-existing directory and also to leave a directory. &lt;strong&gt;cd&lt;/strong&gt; command with a name takes you to the named directory while cd without a name takes you out of the current location to home.
&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%2Fga2s7i4us7cu8z73jqj9.png" alt="cd" width="800" height="430"&gt;
notice we are now in afeezspace2&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ls&lt;/strong&gt; command. This is the list command that lists the items (files and directory) in a directory.
&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%2Fpcikv5vbtq1x1a0ilkcc.png" alt="ls command" width="800" height="418"&gt;
Notice the &lt;strong&gt;ls&lt;/strong&gt; command didn't list anything because the &lt;strong&gt;afeezspace2&lt;/strong&gt; directory is empty. The &lt;strong&gt;pwd&lt;/strong&gt; command is showing us that we are in afeezspace2 located in the ubuntu-homepage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;exit&lt;/strong&gt; command takes the user out of the whole environment, in this case out of the administrative/root environment to home.
&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%2Fobiy18gygp0knd52xi5j.png" alt="exit command" width="800" height="421"&gt;
Notice we have been taken out of the whole root environment. &lt;strong&gt;sudo su&lt;/strong&gt; takes us back into the homepage of the administrative environment.
-using the &lt;strong&gt;ls&lt;/strong&gt; command at this point will show us the 2 directories previously created.
&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%2Fcmtfbysaop3xmmtsk0uh.png" alt="Is command" width="800" height="418"&gt; &lt;/li&gt;
&lt;li&gt;Lets go back into afeezspace1. with the command &lt;strong&gt;cd afeezspace1&lt;/strong&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%2Fj9slbsca69flcghv93lq.png" alt="Image description" width="800" height="439"&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;cd ..&lt;/strong&gt; command - This takes you out of the space you are to the space just above, as against the &lt;strong&gt;cd&lt;/strong&gt; that takes you back to home
&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%2F9992omboprfwtx49f26m.png" alt="cd .." width="800" height="414"&gt;
&lt;/li&gt;
&lt;li&gt;Enter &lt;strong&gt;cd afeezspace1&lt;/strong&gt; to enter the afeezspace1 directory again.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Creating text files: &lt;strong&gt;touch name of file&lt;/strong&gt; is the commands that create an empty test file to host codes and tect documents.&lt;br&gt;&lt;br&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%2Fbqccmnrlkgx9qk1snkib.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%2Fbqccmnrlkgx9qk1snkib.png" alt="touch" width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Notice 3 files (World, Africa and Nigeria) have been created. Using the &lt;strong&gt;ls&lt;/strong&gt; command lists out the files in the afeezspace1 directory&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deleting - &lt;strong&gt;rm&lt;/strong&gt; deletes a file.  &lt;strong&gt;rm Nigeria&lt;/strong&gt; will delete the Nigeria file. Enter &lt;strong&gt;ls&lt;/strong&gt; command to see the files left in the directory.&lt;/li&gt;
&lt;/ul&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%2Fegbvztgh6600l5nph2yg.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%2Fegbvztgh6600l5nph2yg.png" alt="RM" width="800" height="413"&gt;&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Notice the file &lt;strong&gt;Nigeria&lt;/strong&gt; is gone&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Writing in a text file - The commands &lt;strong&gt;vi name of text file&lt;/strong&gt; or &lt;strong&gt;vim name of text file&lt;/strong&gt; will open up the text file for content to be added/edited.&lt;br&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%2Fet4rv0bgmubs266utaq1.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%2Fet4rv0bgmubs266utaq1.png" alt="vi" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To write into the file, press &lt;strong&gt;i&lt;/strong&gt; then go ahead to type
&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%2Fu21l83fse8p5br930v2s.png" alt="adding content to a text file" width="800" height="424"&gt;
&lt;/li&gt;
&lt;li&gt;Exiting a text file - Press &lt;strong&gt;esc&lt;/strong&gt; to exit to writting mode and &lt;strong&gt;shift :wq&lt;/strong&gt; will &lt;strong&gt;save&lt;/strong&gt; and exit the text file.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fjb2hc3eaw3x14xw2lhvu.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%2Fjb2hc3eaw3x14xw2lhvu.png" alt="entering text" width="800" height="408"&gt;&lt;/a&gt;&lt;br&gt;
Notice we are back to the multipass window&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Viewing the content of a text file: The command &lt;strong&gt;cat name of text file&lt;/strong&gt; will display the content of a text file. Enter &lt;strong&gt;cat world&lt;/strong&gt; to see what we have just written in the &lt;strong&gt;world&lt;/strong&gt; text file.&lt;/li&gt;
&lt;/ul&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%2Fyu1i0t1wrvbxkoitvg8a.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%2Fyu1i0t1wrvbxkoitvg8a.png" alt="cat" width="800" height="232"&gt;&lt;/a&gt;&lt;br&gt;
Notice the display&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The copy command: The command &lt;strong&gt;cp name destination&lt;/strong&gt; copies the content of the text file named to the destination directory. &lt;strong&gt;cp world afeezspace2&lt;/strong&gt; will copy the text file world to afeezspace2.&lt;/li&gt;
&lt;/ul&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%2F7zi3kepfiwz92nc2qnl1.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%2F7zi3kepfiwz92nc2qnl1.png" alt="copy" width="800" height="227"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;deleting a directory: the command &lt;strong&gt;rmdir name&lt;/strong&gt; will delete the directory with the specified name, while &lt;strong&gt;rm name&lt;/strong&gt; will delete a file with the specified name.&lt;/li&gt;
&lt;li&gt;Generating a report of all commands used: The command &lt;strong&gt;history&lt;/strong&gt; will list out all the commands that have been used in the current shell&lt;/li&gt;
&lt;/ul&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%2F5qbhzgf3xwf0catv4j6m.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%2F5qbhzgf3xwf0catv4j6m.png" alt="history" width="800" height="255"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Thanks for reading this article which shows that Linux is fun, taking us through basic commands in multipass.&lt;/p&gt;

&lt;p&gt;Drop comments and questions in the comment session.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Creating a Virtual Machine scale set</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Sat, 16 Nov 2024 11:40:31 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/creating-a-virtual-machine-scale-set-1a34</link>
      <guid>https://dev.to/afeez_adeyemo/creating-a-virtual-machine-scale-set-1a34</guid>
      <description>&lt;p&gt;This is a tutorial that gives a step-by-step guide, with screenshots on how to create a virtual machine scale set. It is a sequel to the previous tutorials on adding hard disc to a VM and creating an image gallery.&lt;/p&gt;

&lt;p&gt;A Virtual Machine Scale Set (VMSS) in Azure is a service that allows you to create and manage a group of identical, load-balanced VMs. The key feature of a VM scale set is its ability to automatically increase or decrease the number of VM instances in response to demand or a defined schedule12.&lt;/p&gt;

&lt;p&gt;Here are some of the main benefits of using VM scale sets:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automatic Scaling: VMSS can automatically adjust the number of VMs based on metrics like CPU usage, memory usage, or network traffic.&lt;/li&gt;
&lt;li&gt;High Availability: By distributing VMs across availability zones or fault domains, VMSS ensures high availability and resilience.&lt;/li&gt;
&lt;li&gt;Consistent Configuration: All VM instances in a scale set are created from the same base OS image and configuration, ensuring consistency across your environment.&lt;/li&gt;
&lt;li&gt;Load Balancing: VMSS integrates with Azure Load Balancer and Azure Application Gateway to distribute traffic efficiently.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Fine below the steps in creating a virtual machine scale set.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;From the previously create and saved image. Select &lt;strong&gt;+ create VMSS&lt;/strong&gt;.&lt;br&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%2F3gpy8cmtyspmk4bvhbhv.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%2F3gpy8cmtyspmk4bvhbhv.png" alt="+ create VMSS" width="800" height="375"&gt;&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enter details of the VMSS&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Enter the &lt;strong&gt;resource group&lt;/strong&gt; name that contains the previously created VM and Image gallery. Set the &lt;strong&gt;Virtual machine scale set name&lt;/strong&gt;. &lt;/li&gt;
&lt;/ul&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%2F5motvjtugckw7r5z3q5w.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%2F5motvjtugckw7r5z3q5w.png" alt="VMSS details" width="800" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For the orchestration mode, there are 2 optional (Flexible and Uniform). Flexible creates a scale set of VMs with high availability i.e. a set of machines that are very dependable with no downtime. The uniform options create a set of stateless machines that doesn't store historical information.&lt;br&gt;
For the purpose of this tutorial select &lt;strong&gt;flexible&lt;/strong&gt;&lt;br&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%2Fofim92rzrnypiau6kskt.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%2Fofim92rzrnypiau6kskt.png" alt="orchestration mode" width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For scaling select &lt;strong&gt;manually update the capacity&lt;/strong&gt;, this enables you to manually scale. Autoscaling can be used if conditions of overloading can be predetermined and configured into the Autoscaling criteria.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select license type&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Review and create&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Ffbcnm40b8p19w2jy7alt.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%2Ffbcnm40b8p19w2jy7alt.png" alt="licensing" width="800" height="358"&gt;&lt;/a&gt;&lt;br&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%2Fdy2mgrl6icbfhios7sjs.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%2Fdy2mgrl6icbfhios7sjs.png" alt="scaling" width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the VMSS to deploy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;4 - Go the VMSS just created. In the &lt;strong&gt;Availability + scale&lt;/strong&gt; blade, select &lt;strong&gt;Scaling&lt;/strong&gt;. Notice manual scale is pre-selected&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%2F3g2r7o7nmf3epw47g402.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%2F3g2r7o7nmf3epw47g402.png" alt="Image description" width="800" height="353"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The instance count defines the number of VMs to be created automatically in the VMSS. For this tutorial set it at &lt;strong&gt;50&lt;/strong&gt; and &lt;strong&gt;save&lt;/strong&gt; and wait for saving to be complete.&lt;/li&gt;
&lt;/ul&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%2Fgrh7oqkddkpe17zzqkwe.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%2Fgrh7oqkddkpe17zzqkwe.png" alt="Image description" width="800" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Navigate back to virtual machines from the home page. Observe that Azure is automatically creating 50 VMs in the scale set.&lt;/li&gt;
&lt;/ul&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%2Fac0mjkkcganwfxiuk4qt.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%2Fac0mjkkcganwfxiuk4qt.png" alt="VMSS deployed" width="800" height="342"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This VMSS comprising of 50 VMs are now available to support increased workload thereby ensuring high availability and performance.&lt;/p&gt;

&lt;p&gt;Kindly drop questions and comments in the comment section&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>cloud</category>
      <category>cloudcomputing</category>
      <category>azure</category>
    </item>
    <item>
      <title>Capturing the image of a Virtual machine in Azure</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Sat, 16 Nov 2024 09:50:17 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/capturing-the-image-of-a-virtual-machine-in-azure-38c8</link>
      <guid>https://dev.to/afeez_adeyemo/capturing-the-image-of-a-virtual-machine-in-azure-38c8</guid>
      <description>&lt;p&gt;This tutorial demonstrates how to capture the image of a virtual machine in Azure.&lt;/p&gt;

&lt;p&gt;In Azure, an image is essentially a template or blueprint for a virtual machine (VM). It includes the operating system, installed programs, settings, and configurations needed to create a replica of a VM. When you create a VM from an image, a copy of the virtual hard disks (VHDs) in the image is used to create the disks for the new VM.&lt;/p&gt;

&lt;h2&gt;
  
  
  Table of content
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create a compute gallery.&lt;br&gt;
Step 2: Capture and store VM's image.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create a compute gallery&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Logon to Azure porter&lt;/li&gt;
&lt;li&gt;On the &lt;strong&gt;homepage&lt;/strong&gt;, search for &lt;strong&gt;Azure compute galleries&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fxqy0bb5dtv9v86jp50sc.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%2Fxqy0bb5dtv9v86jp50sc.png" alt="search for Azure compute galleries" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;+ create&lt;/strong&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%2Fjxgxearbw6z20nq47jfa.png" alt="select + create" width="800" height="367"&gt;
&lt;/li&gt;
&lt;li&gt;Enter &lt;strong&gt;subscription details&lt;/strong&gt; and &lt;strong&gt;Instance details&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Select resource group that contains the VM to be captured&lt;/li&gt;
&lt;li&gt;Enter a suitable &lt;strong&gt;name&lt;/strong&gt; and &lt;strong&gt;description&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;review and create&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;create&lt;/strong&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%2F2dhzqn9zq16ebyebl03b.png" alt="details of compute gallery" width="800" height="342"&gt;
&lt;/li&gt;
&lt;li&gt;Notice resource has been completely deployed. &lt;strong&gt;Go to resource&lt;/strong&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%2Fpfunsdl3z65sd1o8zr0j.png" alt="Image description" width="800" height="372"&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Capture and store VM's image.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Navigate into the VM previously created, with the added and formatted disc.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;capture&lt;/strong&gt; and &lt;strong&gt;image&lt;/strong&gt; from the drop down menu
&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%2Fhvga99nabhbxsoewzbs2.png" alt="capture and image" width="800" height="369"&gt;
&lt;/li&gt;
&lt;li&gt;Enter the &lt;strong&gt;Target azure gallery name&lt;/strong&gt; is the one just created.

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;new&lt;/strong&gt; in the &lt;strong&gt;Target VM image definition&lt;/strong&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%2F80xpbj2xgn82fbjsimy6.png" alt="Target VM image definition" width="800" height="346"&gt;
&lt;/li&gt;
&lt;li&gt;Enter &lt;strong&gt;VM image definition name&lt;/strong&gt; and click &lt;strong&gt;ok&lt;/strong&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%2Fkp10036d332vwexhqck0.png" alt="VM image definition name" width="800" height="372"&gt;
&lt;/li&gt;
&lt;li&gt;As this is the first image of the VM, set the &lt;strong&gt;version number&lt;/strong&gt; to &lt;strong&gt;0.0.1&lt;/strong&gt;. &lt;strong&gt;Review and create&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;create&lt;/strong&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%2Fiss0ez5qvxcusssbc6nw.png" alt="version number" width="800" height="363"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the resource to deploy
&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%2F0otg1iwmp5r5sgxo05bt.png" alt="Image description" width="800" height="346"&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;The image has been successfully captured and saved.&lt;/p&gt;

&lt;p&gt;Please drop comments and questions in the comments section.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>cloud</category>
      <category>azure</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>Adding a data disc to a windows VM</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Tue, 05 Nov 2024 21:34:08 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/adding-a-data-disc-to-a-windows-vm-2n8i</link>
      <guid>https://dev.to/afeez_adeyemo/adding-a-data-disc-to-a-windows-vm-2n8i</guid>
      <description>&lt;p&gt;This is a guide on how to add a data disc to a Virtual Machine (VM).&lt;/p&gt;

&lt;p&gt;In the realm of virtualization, managing storage is a critical aspect of maintaining efficient and scalable virtual environments. One common task that administrators and users often encounter is adding a disk to a virtual machine (VM). This process is essential for creating and expanding storage capacity, improving performance, and ensuring that virtual machines can handle increasing workloads. Whether you are using VMware, VirtualBox, or another virtualization platform, understanding how to add a disk to a VM is a fundamental skill. This assignment will guide you through the steps required to add a new virtual hard disk to a virtual machine, highlighting the key considerations and best practices to ensure a smooth and successful implementation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Table of Content
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create a VM or select an existing VM&lt;/li&gt;
&lt;li&gt;Add a disc&lt;/li&gt;
&lt;li&gt;RDP into the VM&lt;/li&gt;
&lt;li&gt;Initialize the disc and make it useable.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;1. Create a VM or select an existing VM&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Login into Azure Portal. Go to &lt;strong&gt;home&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Search for &lt;strong&gt;Azure virtual machine&lt;/strong&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%2Fq24wbvux7bw6vjubegfw.png" alt="homepage" width="800" height="375"&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;create&lt;/strong&gt;, pick &lt;strong&gt;Azure virtual machine&lt;/strong&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%2Fkovpjbo8helda2yw7x57.png" alt="create virtual machine" width="800" height="340"&gt;
&lt;/li&gt;
&lt;li&gt;Create a virtual machine (check previous articles on how to create a windows virtual machine.&lt;/li&gt;
&lt;li&gt;Select the virtual machine.
&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%2Fo04sajycvjtrwylm1nrz.png" alt="select VM" width="800" height="400"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Add a disc&lt;/strong&gt;&lt;br&gt;
To add a disc go through the steps below&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to &lt;strong&gt;overview&lt;/strong&gt;. Under &lt;strong&gt;settings&lt;/strong&gt; blade, select &lt;strong&gt;disc&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;create and attach a new disc&lt;/strong&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%2Fxduiolrxcda4u5pj6k5a.png" alt="create a new disc" width="800" height="367"&gt;
&lt;/li&gt;
&lt;li&gt;Enter an appropriate &lt;strong&gt;disc name&lt;/strong&gt;, select &lt;strong&gt;storage type&lt;/strong&gt; and &lt;strong&gt;size&lt;/strong&gt;. &lt;strong&gt;Apply&lt;/strong&gt; changes.
&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%2F3433bwe6dkfj75r3nxqf.png" alt="disc details" width="800" height="385"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. RDP into the VM&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;strong&gt;connect blade&lt;/strong&gt;, select &lt;strong&gt;connect&lt;/strong&gt; and &lt;strong&gt;select&lt;/strong&gt; native RDP.
&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%2F6mfwtgkppg85zzlqm1pt.png" alt="select native RDP" width="800" height="341"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for it to configure. &lt;strong&gt;download RDP file&lt;/strong&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%2Fwpr0lvspdzf9vofdhh4f.png" alt="download RDP file" width="800" height="370"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the file to download. Run the downloaded RDP file
&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%2F4dyfzns60e10w3ca7d0x.png" alt="run the downloaded RDP file" width="800" height="348"&gt;
&lt;/li&gt;
&lt;li&gt;Enter details &lt;strong&gt;username and password&lt;/strong&gt;, click &lt;strong&gt;OK&lt;/strong&gt; to connect to the VM.&lt;/li&gt;
&lt;li&gt;Notice the VM has come up and you are now connected to the VM
&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%2Flt2cfxv6qcp3i17ewxzh.PNG" alt="VM opened" width="800" height="450"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Initialize the disc and make it useable.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the search bar of the VM, search for &lt;strong&gt;disc management&lt;/strong&gt;. Select &lt;strong&gt;create and format hard disc partition&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Notice the system saying that you must initialize the disc. Click &lt;strong&gt;ok&lt;/strong&gt; to initiate the initializing. 
&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%2Fy5wazg20r6204vimta2v.PNG" alt="initiate disc formatting" width="800" height="452"&gt;
&lt;/li&gt;
&lt;li&gt;Right click and select &lt;strong&gt;new simple volume&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Continue to select &lt;strong&gt;next&lt;/strong&gt; until you get to &lt;strong&gt;format partition&lt;/strong&gt;&lt;br&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%2F1dqt21nsztbgzzqsccy4.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%2F1dqt21nsztbgzzqsccy4.PNG" alt="select next" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;From the &lt;strong&gt;format partition&lt;/strong&gt; page, give the disc a name. Click &lt;strong&gt;yes&lt;/strong&gt; to perform quick format.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the &lt;strong&gt;complete the new simple volume wizard&lt;/strong&gt; page, select &lt;strong&gt;finish&lt;/strong&gt;&lt;br&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%2Foc6m4johrkiedng0oa5l.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%2Foc6m4johrkiedng0oa5l.PNG" alt="Finish formatting" width="800" height="633"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Notice the primary partition is now healthy&lt;br&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%2F2wr2ht261om37psb4o3t.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%2F2wr2ht261om37psb4o3t.PNG" alt="primary partition healthy" width="800" height="635"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This VM now has a formatted disc and can now be used.&lt;/p&gt;

&lt;p&gt;Please drop comments and ask questions in the comment section.&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>azure</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>How to create an App service application and hosting an app on it</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Mon, 28 Oct 2024 09:36:01 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/how-to-create-an-app-service-application-and-hosting-an-app-on-it-ocd</link>
      <guid>https://dev.to/afeez_adeyemo/how-to-create-an-app-service-application-and-hosting-an-app-on-it-ocd</guid>
      <description>&lt;p&gt;This is a guide on how to create an app service application on Azure and how to host an app on it.&lt;/p&gt;

&lt;p&gt;In this article, I will make use of Azure Command-Line Interface (CLI) to issue the commands to create the app and deploy it. The Azure CLI is a powerful tool that allows you to manage Azure resources directly from your terminal or command prompt, it is a quicker way to deploy, monitor and manage azure resources.&lt;/p&gt;

&lt;h2&gt;
  
  
  Table of Content
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Introduction.&lt;/li&gt;
&lt;li&gt;Download Azure CLI&lt;/li&gt;
&lt;li&gt;Creating Web App service using Azure CLI.&lt;/li&gt;
&lt;li&gt;Uploading content.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  1. Introduction
&lt;/h2&gt;

&lt;p&gt;Azure App Service&lt;br&gt;
An Azure App Service application is a fully managed platform-as-a-service (PaaS) offering from Microsoft Azure. It enables developers to build, deploy, and scale web applications, mobile backends, and RESTful APIs quickly and efficiently. Here are some key features and benefits of Azure App Service applications:&lt;/p&gt;

&lt;p&gt;Key Features&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Multiple Language Support: Azure App Service supports various programming languages, including .NET, Java, Node.js, PHP, Python, and Ruby1.
Integrated Development Environment: It integrates seamlessly with popular development environments like Visual Studio and GitHub, making it easier to deploy and manage applications2.&lt;/li&gt;
&lt;li&gt;Scalability: You can scale your applications up or down based on demand, ensuring optimal performance and cost-efficiency3.
Security: Azure App Service provides built-in security features, including authentication and authorization, SSL/TLS certificates, and compliance with industry standards3.&lt;/li&gt;
&lt;li&gt;Continuous Integration and Deployment (CI/CD): It supports CI/CD pipelines, allowing for automated deployment and updates2.&lt;/li&gt;
&lt;li&gt;Monitoring and Diagnostics: The platform offers comprehensive monitoring and diagnostic tools to track application performance and troubleshoot issues2. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Benefits&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ease of Use: Azure App Service simplifies the process of deploying and managing applications, reducing the need for extensive infrastructure management.&lt;/li&gt;
&lt;li&gt;Cost-Effective: With various pricing tiers, you can choose a plan that fits your budget and scale as your application grows3.&lt;/li&gt;
&lt;li&gt;High Availability: The platform ensures high availability and reliability, with options for automatic backups and disaster recovery3.&lt;/li&gt;
&lt;li&gt;Global Reach: Azure’s global data centers allow you to deploy applications closer to your users, improving performance and user experience2.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Azure App Service is ideal for developers looking to focus on building their applications without worrying about the underlying infrastructure. It provides a robust, scalable, and secure environment for modern web and mobile applications.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Downloading Azure CLI
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Download Azure CLI &lt;/li&gt;
&lt;li&gt;On &lt;strong&gt;Google&lt;/strong&gt; search for &lt;strong&gt;Azure CLI&lt;/strong&gt;, click &lt;strong&gt;Install&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&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%2Ficyayeyj2f6xzzblgfb6.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%2Ficyayeyj2f6xzzblgfb6.png" alt="Search for and install CLI" width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pick the version compactible to your computer (Windows or MacOS) to download&lt;/li&gt;
&lt;/ul&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%2F38hebly3xlp5dwycptoh.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%2F38hebly3xlp5dwycptoh.png" alt="Version of CLI" width="800" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the installation file. Install Azure CLI. Wait for it to install and close it.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Creating the web App with Azure CLI and PowerShell
&lt;/h2&gt;

&lt;p&gt;A - Open &lt;strong&gt;Terminal&lt;/strong&gt; or &lt;strong&gt;PowerShell&lt;/strong&gt; on your computer. They are mostly preinstalled on every system.&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%2Fnu8xyiey3335e2foqafg.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%2Fnu8xyiey3335e2foqafg.png" alt="Open PowerShell" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;B - To &lt;strong&gt;login&lt;/strong&gt; into Azure.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Enter the command &lt;strong&gt;"az login"&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;It will pop up the Azure login page on the browser. Login your azure account.&lt;/li&gt;
&lt;/ul&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%2Ffyaworvdty1iauc3zamt.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%2Ffyaworvdty1iauc3zamt.png" alt="Login Azure" width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Observe on PowerShell that you are logged in.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enter&lt;/strong&gt; to confirm the default/active subscription was picked.&lt;/li&gt;
&lt;/ul&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%2Fbec0ehpgvtni6g7d4xj5.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%2Fbec0ehpgvtni6g7d4xj5.png" alt="Pick subscription" width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;C - Create a resource group. &lt;br&gt;
A resource group in Azure is a logical container that holds related Azure resources, such as virtual machines, storage accounts, web apps, databases, and more.&lt;/p&gt;

&lt;p&gt;To create, enter the command &lt;strong&gt;"az group create --name YesAppRGAfeez --location eastus"&lt;/strong&gt;&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%2F5nv311wtjq5ye3blir76.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%2F5nv311wtjq5ye3blir76.png" alt="Create a resource group with Azure CLI" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;D - Create an App service plan&lt;/p&gt;

&lt;p&gt;An App Service plan in Azure defines a set of compute resources for a web app to run. It is basically a compute resource that host a web app.&lt;/p&gt;

&lt;p&gt;To create, enter the command &lt;strong&gt;"az appservice plan create --name YesAppAfeezPlan --resource-group YesAppRGAfeez"&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;This will create YesAppAfeezPlan inside the already created YesAppRGAfeez resource group&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%2F4bafif88pg2cmvdfgxba.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%2F4bafif88pg2cmvdfgxba.png" alt="creating appservice plan with CLI" width="800" height="390"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Notice the App Service Plan with name YesAppAfeezPlan has been created.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;E - Create a Web App&lt;br&gt;
A web app, or web application, is a software application that runs on a web server and can be accessed through a web browse.&lt;/p&gt;

&lt;p&gt;To create, enter the command &lt;strong&gt;az webapp create --name YesAppServiceApp --resource-group YesAppRGAfeez --plan YesAppAfeezPlan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This will create Webapp named &lt;strong&gt;YesAppServiceApp&lt;/strong&gt; inside the resource group &lt;strong&gt;YesAppRGAfeez&lt;/strong&gt; inside the plan &lt;strong&gt;YesAppAfeezPlan&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;F - Explore the webapp that has been created&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Search for &lt;strong&gt;App services&lt;/strong&gt; on the home page in your Azure. &lt;br&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%2Fpfru2ehf8qj4ce2h5cl5.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%2Fpfru2ehf8qj4ce2h5cl5.png" alt="Search for App ssrvices on Azure" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Notice the app that was created&lt;/li&gt;
&lt;li&gt;Click on the webapp just created &lt;strong&gt;YesAppServiceApp&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fbvjrcc5dfz8khma2ox9c.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%2Fbvjrcc5dfz8khma2ox9c.png" alt="open the webapp" width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on the &lt;strong&gt;default domain&lt;/strong&gt; to see that the webapp is running and empty&lt;/li&gt;
&lt;/ul&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%2Fj7d42y45p8vj3ogqy20k.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%2Fj7d42y45p8vj3ogqy20k.png" alt="default domain" width="800" height="356"&gt;&lt;/a&gt;&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%2Fa8iollu544ez1ywrrxfs.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%2Fa8iollu544ez1ywrrxfs.png" alt="webapp is running" width="800" height="397"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4 - Uploading content in the webapp
&lt;/h2&gt;

&lt;p&gt;A. Copy the source code from predetermined location. For the purpose of this article, a source code for a Quran app will be created using ChatGPT.&lt;/p&gt;

&lt;p&gt;Type &lt;strong&gt;sample HTML CSS script application for a holy Quran application&lt;/strong&gt; in ChatGPT or it can be any app you wish to develop.&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%2Fi74v4mmfwtrb0badct6p.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%2Fi74v4mmfwtrb0badct6p.png" alt="search for code on ChatGPT" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Enter&lt;/strong&gt; and &lt;strong&gt;copy&lt;/strong&gt; code&lt;/li&gt;
&lt;/ul&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%2Fnyd3k55hk4ravpp7r3sa.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%2Fnyd3k55hk4ravpp7r3sa.png" alt="code on ChatGPT" width="800" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;B. Prepare environment and upload the code&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;search box&lt;/strong&gt; search for and select &lt;strong&gt;Advanced tools&lt;/strong&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%2F63z1wn2wawynv0sj1gmr.png" alt="Advanced tools" width="800" height="378"&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;go&lt;/strong&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%2Fdkv2dsj1basvxxbszkfm.png" alt="go" width="800" height="352"&gt;
&lt;/li&gt;
&lt;li&gt;notice it opens up a fresh tab on your browser
&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%2Fgtv42k5u1ryyq6wrqx04.png" alt="kudu new tab" width="800" height="403"&gt;
&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;debug console&lt;/strong&gt; and &lt;strong&gt;CMD&lt;/strong&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%2Ftynxpucpe8qnm7iymwad.png" alt="debug console and CMD" width="800" height="402"&gt;
&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;site&lt;/strong&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%2Fl5w1jednbuvqkwtbb1go.png" alt="Site on Kudu" width="800" height="375"&gt;
&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;WWWroot&lt;/strong&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%2Fglz178t8xcywlavcrnfm.png" alt="WWWroot" width="800" height="404"&gt;
&lt;/li&gt;
&lt;li&gt;Click on the &lt;strong&gt;pencil icon on hostingstart.html&lt;/strong&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%2Foxol316n4xs3zy2jn9md.png" alt="hostingstart.html" width="800" height="382"&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Delete&lt;/strong&gt; the default code in the page&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paste&lt;/strong&gt; the code for the App generated with ChatGPT&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Save&lt;/strong&gt;
![Paste code in Kudu(&lt;a href="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/px19xo88y71y8my8srg2.png" rel="noopener noreferrer"&gt;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/px19xo88y71y8my8srg2.png&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;C. Check uploaded App&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go back to Azure, &lt;strong&gt;enter&lt;/strong&gt; into the &lt;strong&gt;YesAppServiceApp&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Click on the &lt;strong&gt;default domain&lt;/strong&gt; to revisit the webapp
&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%2F8hjos7wldnf7uuvwl4b2.png" alt="Default domain" width="800" height="353"&gt;
&lt;/li&gt;
&lt;li&gt;See the &lt;strong&gt;WebApp&lt;/strong&gt; displayed
&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%2Fo5c6kaopd61t2dtij3wt.png" alt="Webapp" width="800" height="396"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next article will be on how to upload code from Github into a WebApp.&lt;/p&gt;

&lt;p&gt;Please drop comments and questions in the comment session&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>github</category>
      <category>azure</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>How to create a linux VM using custom template, associating and dissociating IP address</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Sat, 19 Oct 2024 17:03:48 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/how-to-create-a-linux-vm-using-custom-template-associating-and-dissociating-ip-address-42ip</link>
      <guid>https://dev.to/afeez_adeyemo/how-to-create-a-linux-vm-using-custom-template-associating-and-dissociating-ip-address-42ip</guid>
      <description>&lt;p&gt;This is a step by step procedure on how to create a Linux virtual machine (VM) using custom templates, associating and dissociating IP addresses to shut down the machine.&lt;/p&gt;

&lt;p&gt;This will guide on how to create a Linux VM within the shortest possible time, also how to save cost by dissociating the VM's IP address when it's no longer in use and association the VM's IP when needed.&lt;/p&gt;

&lt;p&gt;We will also learn how to create new IP addresses and associating it to an existing VM. Also how to connect a VM using windows power shell with &lt;strong&gt;ssh&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Below are the steps to follow:&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1. Creating a VM using custom templates.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Step 2. Associating and dissociating a VM's IP address.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Step 3. Creating new IP address for a VM.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Step 4. Connect and configure the VM with ssh on windows PowerShell.
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Creating a VM using custom templates&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Log on to azure&lt;/li&gt;
&lt;li&gt;search for &lt;strong&gt;deploy a custom template&lt;/strong&gt; on the task bar
&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%2Firlvce7nucba6fbuuydg.png" alt="deploy a custom template" width="800" height="412"&gt;
&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Create a Linux virtual machine&lt;/strong&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%2Fbz4xvjirhbxtzsotytz3.png" alt="Create a Linux virtual machine" width="800" height="352"&gt;
&lt;/li&gt;
&lt;li&gt;On the Basics tab. You will be required to just create the resource group, username and password.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create new&lt;/strong&gt; resource group. Give it a unique name and click &lt;strong&gt;OK&lt;/strong&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%2Flgc00e8jnqbtapvo111c.png" alt="Project details" width="800" height="347"&gt;
&lt;/li&gt;
&lt;li&gt;In the instance details&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;Admin username&lt;/strong&gt; and &lt;strong&gt;Admin password or Key&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review and Create&lt;/strong&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%2Fsp3b24y8pd3wrqc0g42g.png" alt="instance details" width="800" height="271"&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create&lt;/strong&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%2F3uze5fvdxvkk13tjnwrk.png" alt="Create" width="800" height="350"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the resource to create, the &lt;strong&gt;Go to resource&lt;/strong&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%2Fxciz6w7j0gxpizs7rs68.png" alt="Go to resource" width="800" height="352"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Associating and dissociating a VM's IP address&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the &lt;strong&gt;simpleLinuxVM&lt;/strong&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%2Fpv9671hnvg7ivjhrdlua.png" alt="simpleLinuxVM" width="800" height="383"&gt;
&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Overview&lt;/strong&gt;, under the &lt;strong&gt;Properties&lt;/strong&gt; tab, click on the &lt;strong&gt;Public IP address&lt;/strong&gt; in the &lt;strong&gt;Networking&lt;/strong&gt; section.
&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%2F5hwonujnvmiciwttgd4u.png" alt="Public IP address" width="800" height="352"&gt;
&lt;/li&gt;
&lt;li&gt;Drag out the &lt;strong&gt;Idle timeout&lt;/strong&gt; to the maximum 30 minutes. This will ensure the VM does not time out after the default 4 minutes
&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%2F848oypo7ubx2zpfwox1y.png" alt="Idle timeout" width="800" height="351"&gt;
&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;Stop&lt;/strong&gt;, to stop the VM from running
&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%2Fctcd40lci5rqz16klcye.png" alt="Stop VM" width="800" height="354"&gt;

&lt;ul&gt;
&lt;li&gt;Click on &lt;strong&gt;OK&lt;/strong&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%2Fpjceys95019gk4x5khj6.png" alt="OK Stop" width="800" height="353"&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Stopping a VM does not stop all the cost associated to the VM. The VM's IP address is a cost on its own and can be stopped when not needed. &lt;/li&gt;

&lt;li&gt;Search for &lt;strong&gt;Public IP address&lt;/strong&gt; on the task bar.
&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%2Fv2jnr96dbk3qanun03ip.png" alt="Public IP address" width="800" height="394"&gt;
&lt;/li&gt;

&lt;li&gt;Select the &lt;strong&gt;simpleLinuxIPaddress&lt;/strong&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%2Fevin6r28ugm9cuhghkpf.png" alt="simpleLinuxIPaddress" width="800" height="348"&gt;
&lt;/li&gt;

&lt;li&gt;Select &lt;strong&gt;Dissociate&lt;/strong&gt; and click on &lt;strong&gt;Yes&lt;/strong&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%2Fayie4goskl6z3txz52cd.png" alt="DissociateIPaddress" width="800" height="348"&gt;
&lt;/li&gt;

&lt;li&gt;Notice Dissociate is greyed out
&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%2Fc2r4l65t9pafzvvjp33l.png" alt="Dissociate greyed out" width="800" height="349"&gt;
&lt;/li&gt;

&lt;li&gt;Select &lt;strong&gt;Associate&lt;/strong&gt; to re-associate the VM with an IP address. Pick &lt;strong&gt;Network Interface&lt;/strong&gt; in the resource type drop-down menu. 
Pick &lt;strong&gt;SimpleLinuxVMNetInt&lt;/strong&gt; in the Network interface drop-down menu. Click &lt;strong&gt;OK&lt;/strong&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%2Fpo5olujwsyfig0dckwyl.png" alt="Associate IP address" width="800" height="350"&gt;
&lt;/li&gt;

&lt;li&gt;Notice &lt;strong&gt;Associate&lt;/strong&gt; is greyed out.
&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%2F8dcyqdikt44l7dxz76cv.png" alt="Associate greyed out" width="800" height="351"&gt;
&lt;/li&gt;

&lt;li&gt;Go to properties of the simplelinuxVM, notice the Public IP address is now masked i.e no longer showing
&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%2Fy19evqy4fwdljvfu7me2.png" alt="Public IP masked" width="800" height="352"&gt;
&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Creating new IP address for a VM.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;home&lt;/strong&gt; page, search for ** Public IP address** and ** create a resource**
&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%2F91g6v1kn14zbd0ickujo.png" alt="Create Public IP address" width="800" height="397"&gt;
&lt;/li&gt;
&lt;li&gt;Give it a &lt;strong&gt;name&lt;/strong&gt;, &lt;strong&gt;Review and create&lt;/strong&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%2Fzamf5s97q45ohccq2r5w.png" alt="configure an IP address" width="800" height="344"&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create&lt;/strong&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%2F23kua778qv3cknxo0xwm.png" alt="create IP address" width="800" height="374"&gt;
&lt;/li&gt;
&lt;li&gt;To dissociate the old IP address from the VM.&lt;/li&gt;
&lt;li&gt;Go to home and search for &lt;strong&gt;Public IP address&lt;/strong&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%2Flz03yfuc9mbpu3eska3f.png" alt="Public IP address" width="800" height="376"&gt;
&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Dissociate&lt;/strong&gt;, click &lt;strong&gt;OK&lt;/strong&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%2Fz20tuzh8iuorusfcu4gn.png" alt="Dissociate IP address" width="800" height="348"&gt;
&lt;/li&gt;
&lt;li&gt;Go back to &lt;strong&gt;Public IP address&lt;/strong&gt; and select the new IP address 
&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%2Fcc6s6e19ppw5pfcyuose.png" alt="select new IP" width="800" height="360"&gt;
&lt;/li&gt;
&lt;li&gt;To associate the new IP address to the new VM. Select &lt;strong&gt;associate&lt;/strong&gt;, on the menu select &lt;strong&gt;network interface&lt;/strong&gt; and the &lt;strong&gt;VMname&lt;/strong&gt;. &lt;strong&gt;OK&lt;/strong&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%2Fcuulmdp9k4nc99fp9fsr.png" alt="Associate new IP" width="800" height="351"&gt;
&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;settings/configuration&lt;/strong&gt; tab of the new IP address, drag out the idle time to maximum. To ensure the IP address does not time out too often
&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%2Fig53gapndkcp8qbfbssi.png" alt="configure idle time of IP" width="800" height="351"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4 - Connect and configure the VM with ssh on windows PowerShell.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search for an open Microsoft PowerShell on your computer&lt;/li&gt;
&lt;li&gt;Enter command prompt &lt;strong&gt;ssh username@IPaddress&lt;/strong&gt;, and enter
&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%2Fjxrfy9f7ca23xnj8cg5a.png" alt="Image description" width="800" height="411"&gt;
&lt;/li&gt;
&lt;li&gt;Confirm you want to connect by entering &lt;strong&gt;Yes&lt;/strong&gt; and enter
&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%2Friddy10qqfn2jd44yf1g.png" alt="Enter Yes" width="800" height="408"&gt;
&lt;/li&gt;
&lt;li&gt;tEnter &lt;strong&gt;Password&lt;/strong&gt; previously set. Notice you won't see the password typing out. This is a security feature for Linux. Press enter
&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%2Fnwwai1rvnbivvhft2e5z.png" alt="Enter password" width="800" height="369"&gt;
&lt;/li&gt;
&lt;li&gt;To do anything into the VM, you need to enter root. Enter the command &lt;strong&gt;sudo su&lt;/strong&gt;and enter. 
&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%2Frqegi55giyszmbngxv8t.png" alt="Sudo su" width="800" height="412"&gt;

&lt;ul&gt;
&lt;li&gt;From this point you can go ahead to install anything in the VM&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Please drop questions and comments in the comments section.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>cloud</category>
      <category>linux</category>
      <category>virtualmachine</category>
    </item>
    <item>
      <title>How to create a resume and push to GitHubs pages</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Mon, 14 Oct 2024 11:23:16 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/how-to-create-a-resume-and-push-to-githubs-pages-3lmf</link>
      <guid>https://dev.to/afeez_adeyemo/how-to-create-a-resume-and-push-to-githubs-pages-3lmf</guid>
      <description>&lt;p&gt;This is a step-by-step guide on how to create a resume and push to GitHubs pages&lt;/p&gt;

&lt;h2&gt;
  
  
  Steps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Download Git Bash.&lt;/li&gt;
&lt;li&gt;Configure Git Bash.&lt;/li&gt;
&lt;li&gt;Work with the configured environment.&lt;/li&gt;
&lt;li&gt;Clone your Github repo.&lt;/li&gt;
&lt;li&gt;Push to Github&lt;/li&gt;
&lt;li&gt;Show the content&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Download Git Bash&lt;/strong&gt;&lt;br&gt;
Instructions on downloading and installing Git Bash.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Download Gitbash &lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://git-scm.com/downloads" rel="noopener noreferrer"&gt;
      git-scm.com
    &lt;/a&gt;
&lt;/div&gt;
 click the link above&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose the appropriate windows of the computers being used.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&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%2Fuv2gt79iqbch32l4ieq7.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%2Fuv2gt79iqbch32l4ieq7.png" alt="Download GitBash" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Finish the download by selecting all the defaults.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Open the App&lt;/p&gt;&lt;/li&gt;
&lt;/ul&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%2F0h451iv1o34n553f5qya.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%2F0h451iv1o34n553f5qya.png" alt="open git bash" width="800" height="411"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Configure Git Bash.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To Configure username, enter the command &lt;strong&gt;git config --global user.name “name”&lt;/strong&gt; then press the enter key&lt;/li&gt;
&lt;/ol&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%2Fwenxff345baf0rgpdy0p.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%2Fwenxff345baf0rgpdy0p.png" alt="git config –global user.name “name”" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To configure user email, enter the command &lt;strong&gt;git config --global user.email “email”&lt;/strong&gt; then press enter key.&lt;/li&gt;
&lt;/ol&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%2F42bb66tzg4hizejhwci7.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%2F42bb66tzg4hizejhwci7.png" alt="git config –global user.email “email”" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To check the configuration just completed, enter the command &lt;strong&gt;git config --list&lt;/strong&gt;. This will display the just configured username and user email.&lt;/li&gt;
&lt;/ol&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%2Ffocnvuh7idm1mx2fs9zg.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%2Ffocnvuh7idm1mx2fs9zg.png" alt="git config --list" width="800" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Working with the configured environment.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To Create directory (A directory is a place where all similar items are kept together), enter the command &lt;strong&gt;mkdir website&lt;/strong&gt;, press enter. This will create a directory named website.&lt;/li&gt;
&lt;/ol&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%2F15r4bqxjqss3y1ssmvvf.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%2F15r4bqxjqss3y1ssmvvf.png" alt="mkdir website" width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To enter directory into the directory, enter the command &lt;strong&gt;cd website&lt;/strong&gt;, press enter.&lt;/li&gt;
&lt;/ol&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%2Fp5mmhqkhiwkytp38ssgp.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%2Fp5mmhqkhiwkytp38ssgp.png" alt="cd website" width="800" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To initialize the directory, turns the directory into a Git repository. Enter the command &lt;strong&gt;git init website&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&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%2F71e1xw7eum8ocfo21xsw.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%2F71e1xw7eum8ocfo21xsw.png" alt="git init" width="800" height="414"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To create a text file in the directory called index.html, enter the command &lt;strong&gt;touch index.html&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&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%2F3gfo8vrbz3wrtsx0ag1t.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%2F3gfo8vrbz3wrtsx0ag1t.png" alt="touch index.html" width="800" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Opening the index.html file. Enter the command &lt;strong&gt;vim index.html&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&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%2Flfgkni4jz0a9hzwl9kh3.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%2Flfgkni4jz0a9hzwl9kh3.png" alt="vim index.html" width="800" height="412"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Press i to enable writing into the file&lt;/li&gt;
&lt;/ul&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%2Fyqe4544ajrzvh1kdzpdy.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%2Fyqe4544ajrzvh1kdzpdy.png" alt="write into the file" width="800" height="419"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;create a sample index.html resume with ChatGPT. Go to chatGPT and &lt;strong&gt;create an index.html resume&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2F2uq5daimtvgqwvi3hd7s.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%2F2uq5daimtvgqwvi3hd7s.png" alt="sample resume on ChatGPT" width="800" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;paste the resume into the index.html file. You can edit as appropriate to enter your details.&lt;/li&gt;
&lt;/ul&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%2Fuhsyupk70bxonkowqdxa.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%2Fuhsyupk70bxonkowqdxa.png" alt="paste index.html resume" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;exit the index.html&lt;/strong&gt; file after editing.&lt;/li&gt;
&lt;/ul&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%2Fj5x15ewkx7w7z5oxk82e.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%2Fj5x15ewkx7w7z5oxk82e.png" alt="exit the index file" width="800" height="424"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Clone your Github repo.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to &lt;strong&gt;Github&lt;/strong&gt;. and &lt;strong&gt;create a repository&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&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%2Fpj1erh1vqdcw6lo2ewjg.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%2Fpj1erh1vqdcw6lo2ewjg.png" alt="create a repository in github" width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give a unique name &lt;/li&gt;
&lt;li&gt;Choose public&lt;/li&gt;
&lt;li&gt;Add a readme&lt;/li&gt;
&lt;li&gt;Create repository&lt;/li&gt;
&lt;/ul&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%2Fk61w3r56w4103nruh5kw.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%2Fk61w3r56w4103nruh5kw.png" alt="create a repository" width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clone using the web URL by copying the code. Click in code, under the &lt;strong&gt;HTTPS tab&lt;/strong&gt;, click copy&lt;/li&gt;
&lt;/ul&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%2Fyztpqukejf8phguy45r9.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%2Fyztpqukejf8phguy45r9.png" alt="clone using the web URL" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Enter the command git &lt;strong&gt;remote add origin (paste the url)&lt;/strong&gt;. This will add the text resume.&lt;/li&gt;
&lt;/ul&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%2Fejhsdamlrzlp6x27hxsd.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%2Fejhsdamlrzlp6x27hxsd.png" alt="GIT REMOTE ADD" width="800" height="412"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Push to Github&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;git add index.html

&lt;ul&gt;
&lt;li&gt;To check the git status. This will confirm nothing has been added to the file, but there are untracked files present. Enter &lt;strong&gt;git status&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Enter &lt;strong&gt;git add index.html&lt;/strong&gt;. This will add the file to the staging area.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Enter &lt;strong&gt;git status&lt;/strong&gt; again. This will confirm successful addition.&lt;/li&gt;
&lt;/ol&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%2Fsfham0uygdkorqdn0vjw.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%2Fsfham0uygdkorqdn0vjw.png" alt="git add index.html" width="800" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Enter &lt;strong&gt;git commit -m “Create index.html”&lt;/strong&gt;. This will take a snap short of the file and add a message (create index.html) to it. &lt;strong&gt;-&lt;/strong&gt; creates will the &lt;strong&gt;m&lt;/strong&gt; adds a message&lt;/li&gt;
&lt;/ol&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%2Fvm10b5znubonj157ajva.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%2Fvm10b5znubonj157ajva.png" alt="add a message" width="800" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Enter &lt;strong&gt;git push origin master&lt;/strong&gt;. This will push the file to GitHub.&lt;/li&gt;
&lt;/ol&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%2Fsaoai2lh6rb5fyaj5h03.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%2Fsaoai2lh6rb5fyaj5h03.png" alt="git push origin master" width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Compare and pull request.&lt;/li&gt;
&lt;/ol&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%2F0uzb0vikkty2o2825dly.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%2F0uzb0vikkty2o2825dly.png" alt="compare and pull" width="800" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Noticed the request is pulled but nothing to compare because this is your file and it's the initial pull.&lt;/li&gt;
&lt;/ul&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%2Feljjji0aqlt4hbq4eh86.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%2Feljjji0aqlt4hbq4eh86.png" alt="request pulled" width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6: Show the content&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;click on &lt;strong&gt;settings&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Go to &lt;strong&gt;pages&lt;/strong&gt; tab&lt;/li&gt;
&lt;li&gt;from the &lt;strong&gt;source&lt;/strong&gt; drop down, select &lt;strong&gt;deploy from a master&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;from the &lt;strong&gt;Branch&lt;/strong&gt;, select &lt;strong&gt;master&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;click in &lt;strong&gt;save&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2F7tz9pjr2ymaxp9ljm7bn.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%2F7tz9pjr2ymaxp9ljm7bn.png" alt="pages" width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;refresh&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&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%2F911dtiovat68ws6xx68r.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%2F911dtiovat68ws6xx68r.png" alt="Image description" width="800" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;notice site is now live&lt;/li&gt;
&lt;/ul&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%2F0pvdqafabeteffq4zgvg.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%2F0pvdqafabeteffq4zgvg.png" alt="site is life" width="800" height="399"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;click on visit site&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>tutorial</category>
      <category>github</category>
      <category>git</category>
      <category>chatgpt</category>
    </item>
    <item>
      <title>Provide storage for a new company app</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Tue, 01 Oct 2024 15:57:23 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/provide-storage-for-a-new-company-app-1j7a</link>
      <guid>https://dev.to/afeez_adeyemo/provide-storage-for-a-new-company-app-1j7a</guid>
      <description>&lt;h2&gt;
  
  
  This is a step by step tutorial on how to provide storage for a new company app.
&lt;/h2&gt;

&lt;p&gt;The company is designing and developing a new app. Developers need to ensure the storage is only accessed using keys and managed identities. The developers would like to use role-based access control. To help with testing, protected immutable storage is needed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Table of Content
&lt;/h2&gt;

&lt;p&gt;Step 1: Create the storage account and managed identity.&lt;br&gt;
Step 2: Secure access to the storage account with a key vault and key.&lt;br&gt;
Step 3: Configure the storage account to use the customer managed key in the key vault&lt;br&gt;
Step 4: Configure a time-based retention policy and an encryption scope.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Create the storage account and managed identity.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  1. Provide a storage account for the web app.
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select &lt;strong&gt;Storage accounts&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fclczwldv2puc9gqfmia3.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%2Fclczwldv2puc9gqfmia3.png" alt="Storage accounts" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;+ Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F75x1e0ci57yra6hq2q3a.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%2F75x1e0ci57yra6hq2q3a.png" alt="+ create" width="800" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For &lt;strong&gt;Resource group&lt;/strong&gt; select &lt;strong&gt;Create new&lt;/strong&gt;. Give your resource group a &lt;strong&gt;name&lt;/strong&gt; and select &lt;strong&gt;OK&lt;/strong&gt; to save your changes.&lt;/li&gt;
&lt;/ul&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%2Ffn9gndb2pk6nazxckj8p.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%2Ffn9gndb2pk6nazxckj8p.png" alt="Resource group" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Provide a &lt;strong&gt;Storage account name&lt;/strong&gt;. Ensure the name is unique and meets the naming requirements.&lt;/li&gt;
&lt;/ul&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%2F6k43l54xwbuvvcmgol21.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%2F6k43l54xwbuvvcmgol21.png" alt="Storage account" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Move to the &lt;strong&gt;Encryption tab&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Check the box for &lt;strong&gt;Enable infrastructure encryption&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Notice the warning, This option cannot be changed after this storage account is created.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Review + Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F67rs01a52kls947y6nty.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%2F67rs01a52kls947y6nty.png" alt="Encryption tab" width="800" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the resource to deploy&lt;/li&gt;
&lt;/ul&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%2F66ql0k04nfwikl2dqoaa.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%2F66ql0k04nfwikl2dqoaa.png" alt="deployment complete" width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Provide a managed identity for the web app to use.
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Search for and select &lt;strong&gt;Managed identities&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Flih588jgyhn7egdv9m0n.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%2Flih588jgyhn7egdv9m0n.png" alt="search for managed identities" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fn94c4ukhf1hk5yjagas8.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%2Fn94c4ukhf1hk5yjagas8.png" alt="+ create" width="800" height="341"&gt;&lt;/a&gt;&lt;br&gt;
    - Select your &lt;strong&gt;resource group&lt;/strong&gt;.&lt;br&gt;
    - Give your managed identity a name.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select Review and create, and then Create.&lt;/li&gt;
&lt;/ul&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%2Fb2u77fd46pobjmym59zv.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%2Fb2u77fd46pobjmym59zv.png" alt="IAM" width="800" height="345"&gt;&lt;/a&gt;&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%2F3t7wgjan07hi002p8dt6.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%2F3t7wgjan07hi002p8dt6.png" alt="Create" width="800" height="357"&gt;&lt;/a&gt;&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%2Fbwv6feov2idtdr36mhik.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%2Fbwv6feov2idtdr36mhik.png" alt="deployment is complete" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Assign the correct permissions to the managed identity. The identity only needs to read and list containers and blobs.
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Search for and select your &lt;strong&gt;storage account&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select the &lt;strong&gt;Access Control (IAM) blade&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Add role assignment&lt;/strong&gt; (center of the page).&lt;/li&gt;
&lt;/ul&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%2Fm86e6yq0d1orkihfrlgf.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%2Fm86e6yq0d1orkihfrlgf.png" alt="Add role assignment" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Job functions roles&lt;/strong&gt; page, search for and select the &lt;strong&gt;Storage Blob Data Reader&lt;/strong&gt; role.&lt;/li&gt;
&lt;/ul&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%2Fk22fjt7ifrr99sms4x9y.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%2Fk22fjt7ifrr99sms4x9y.png" alt="Storage Blob Data Reader" width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Members&lt;/strong&gt; page, select &lt;strong&gt;Managed identity&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Select members&lt;/strong&gt;, in the &lt;strong&gt;Managed identity&lt;/strong&gt; drop-down select &lt;strong&gt;User-assigned managed identity&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select the managed identity you created in the previous step.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Select&lt;/strong&gt; and then &lt;strong&gt;Review + assign&lt;/strong&gt; the role.&lt;/li&gt;
&lt;/ul&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%2Fahobfb8rl2n2wxehfne1.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%2Fahobfb8rl2n2wxehfne1.png" alt="Select members" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Review + assign&lt;/strong&gt; a second time to add the role assignment.&lt;/li&gt;
&lt;/ul&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%2Ftw7t7twvsp2pq5jcqyk6.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%2Ftw7t7twvsp2pq5jcqyk6.png" alt="Review + assign" width="800" height="372"&gt;&lt;/a&gt;&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%2Fi6at9sbaybmdk76ukgzl.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%2Fi6at9sbaybmdk76ukgzl.png" alt="Image description" width="800" height="366"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your storage account can now be accessed by a managed identity with the Storage Data Blob Reader permissions.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 2: Secure access to the storage account with a key vault and key.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;To create the key vault and key needed for this part of the lab, your user account must have Key Vault Administrator permissions.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select &lt;strong&gt;Resource groups&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fwgy5ruyri9rx5a8oqz3d.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%2Fwgy5ruyri9rx5a8oqz3d.png" alt="Resource group" width="800" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your &lt;strong&gt;resource group&lt;/strong&gt;, and then the &lt;strong&gt;Access Control (IAM)&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Add role assignment&lt;/strong&gt; (center of the page).&lt;/li&gt;
&lt;/ul&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%2Fd5gjmxpnod7iav1ab9yg.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%2Fd5gjmxpnod7iav1ab9yg.png" alt="IAM blade" width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Job functions roles&lt;/strong&gt; page, search for and select the &lt;strong&gt;Key Vault Administrator&lt;/strong&gt; role.&lt;/li&gt;
&lt;/ul&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%2Fh36jfwuh05b9b8mekzn9.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%2Fh36jfwuh05b9b8mekzn9.png" alt="key vault administrator" width="800" height="339"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Members&lt;/strong&gt; page, select &lt;strong&gt;User, group, or service principal&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Select members&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Search for and select your user account. Your user account is shown in the top right of the portal.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Select&lt;/strong&gt; and then &lt;strong&gt;Review + assign&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fjoq5vlv566mlc3hlqkwl.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%2Fjoq5vlv566mlc3hlqkwl.png" alt="members" width="800" height="371"&gt;&lt;/a&gt;&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%2Fh15sx9zea5tp821smsoo.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%2Fh15sx9zea5tp821smsoo.png" alt="review + assign" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Review + assign&lt;/strong&gt; a second time to add the role assignment.&lt;/li&gt;
&lt;/ul&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%2Fww2cuxdwuy6za0cwsm7j.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%2Fww2cuxdwuy6za0cwsm7j.png" alt="review + assign" width="800" height="366"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You are now ready to continue with the lab.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Create a key vault to store the access keys.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select &lt;strong&gt;Key vaults&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fa3io9e80v1tzj3ua3qnp.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%2Fa3io9e80v1tzj3ua3qnp.png" alt="search for key vault" width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F8z3oav5g1kdy97u16gmg.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%2F8z3oav5g1kdy97u16gmg.png" alt="create" width="800" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your &lt;strong&gt;resource group&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Provide the &lt;strong&gt;name&lt;/strong&gt; for the key vault. The name must be unique.&lt;/li&gt;
&lt;/ul&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%2Fpf5bhq3tr91s2vdkiy0y.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%2Fpf5bhq3tr91s2vdkiy0y.png" alt="key vault name" width="800" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ensure on the &lt;strong&gt;Access configuration&lt;/strong&gt; tab that &lt;strong&gt;Azure role-based access control (recommended)&lt;/strong&gt; is selected.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Review + create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F30euke3ws5pbu8tyofs8.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%2F30euke3ws5pbu8tyofs8.png" alt="access configuration" width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the validation checks to complete and then select &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fmnlsxzljvl2hle9gozuw.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%2Fmnlsxzljvl2hle9gozuw.png" alt="create" width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After the deployment, select &lt;strong&gt;Go to resource&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fr3z8l237mtsk2d9hiwcn.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%2Fr3z8l237mtsk2d9hiwcn.png" alt="go to resource" width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Overview&lt;/strong&gt; blade ensure both &lt;strong&gt;Soft-delete&lt;/strong&gt; and &lt;strong&gt;Purge protection&lt;/strong&gt; are &lt;strong&gt;enabled&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fe5orwswlo77z7ir02bss.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%2Fe5orwswlo77z7ir02bss.png" alt="soft delete and purge protection enabled" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a customer-managed key in the key vault.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In your &lt;strong&gt;key vault&lt;/strong&gt;, in the &lt;strong&gt;Objects&lt;/strong&gt; section, select the &lt;strong&gt;Keys&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Generate/Import&lt;/strong&gt; and &lt;strong&gt;Name&lt;/strong&gt; the key.&lt;/li&gt;
&lt;/ul&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%2F7c12muge9gg9klcix3ep.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%2F7c12muge9gg9klcix3ep.png" alt="keys blade" width="800" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Take the defaults for the rest of the parameters, and &lt;strong&gt;Create&lt;/strong&gt; the key.&lt;/li&gt;
&lt;/ul&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%2Fytdmrv6rlue0lx7eho6q.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%2Fytdmrv6rlue0lx7eho6q.png" alt="create key" width="800" height="365"&gt;&lt;/a&gt;&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%2F95ut6zns4yzpd5fbqshu.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%2F95ut6zns4yzpd5fbqshu.png" alt="key enabled" width="800" height="371"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Configure the storage account to use the customer managed key in the key vault.
&lt;/h2&gt;

&lt;p&gt;1.Before you can complete the next steps, you must assign the Key Vault Crypto Service Encryption User role to the managed identity.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select &lt;strong&gt;Resource groups&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F8l23qccoj70y5wbu6dhn.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%2F8l23qccoj70y5wbu6dhn.png" alt="resource group" width="800" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your &lt;strong&gt;resource group&lt;/strong&gt;, and then the &lt;strong&gt;Access Control (IAM) blade&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Add role assignment&lt;/strong&gt; (center of the page).&lt;/li&gt;
&lt;/ul&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%2Frsb2hz5rl4c4kksk23gl.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%2Frsb2hz5rl4c4kksk23gl.png" alt="add role assignment" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Job functions roles&lt;/strong&gt; page, search for and select the &lt;strong&gt;Key Vault Crypto Service Encryption User&lt;/strong&gt; role.&lt;/li&gt;
&lt;/ul&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%2Ffnegft6iaf2hlkem97v8.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%2Ffnegft6iaf2hlkem97v8.png" alt="Key Vault Crypto Service Encryption User" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;Members&lt;/strong&gt; page, select &lt;strong&gt;Managed identity&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Select members&lt;/strong&gt;, in the &lt;strong&gt;Managed identity&lt;/strong&gt; drop-down select &lt;strong&gt;User-assigned managed identity&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select your managed identity.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Select&lt;/strong&gt; and then &lt;strong&gt;Review + assign&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fbtdo8owcs1mmjm0oewrq.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%2Fbtdo8owcs1mmjm0oewrq.png" alt="members" width="800" height="349"&gt;&lt;/a&gt;&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%2Fq01hqwlq78rmhe5zqixs.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%2Fq01hqwlq78rmhe5zqixs.png" alt="Review + assign" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Review + assign&lt;/strong&gt; a second time to add the role assignment.&lt;/li&gt;
&lt;/ul&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%2F6z6mbgl9253lrgqm1rag.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%2F6z6mbgl9253lrgqm1rag.png" alt="Review + assign" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Configure the storage account to use the customer managed key in your key vault.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Return to your the storage account.&lt;/li&gt;
&lt;/ul&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%2Fc0dmabtk7codb4uypwmu.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%2Fc0dmabtk7codb4uypwmu.png" alt="storage account" width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Security + networking&lt;/strong&gt; section, select the &lt;strong&gt;Encryption&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Customer-managed keys&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Select a key vault and key&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fjqgo6sh1ro3bwvuwn042.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%2Fjqgo6sh1ro3bwvuwn042.png" alt="encryption key" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your key vault and key.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Select&lt;/strong&gt; to confirm your choices.&lt;/li&gt;
&lt;/ul&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%2F5f36cdcvgrxfysxbnvci.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%2F5f36cdcvgrxfysxbnvci.png" alt="Image description" width="800" height="348"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ensure the &lt;strong&gt;Identity type&lt;/strong&gt; is &lt;strong&gt;User-assigned&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Select an identity&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F6of42jq1ax94sl1g33e0.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%2F6of42jq1ax94sl1g33e0.png" alt="select an identity" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your managed identity then select &lt;strong&gt;Add&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Save&lt;/strong&gt; your changes.&lt;/li&gt;
&lt;/ul&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%2F21avbtqyyktrsy0gghod.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%2F21avbtqyyktrsy0gghod.png" alt="save changes" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you receive an error that your identity does not have the correct permissions, wait a minute and try again. &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 4: Configure a time-based retention policy and an encryption scope.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;The developers require a storage container where files can’t be modified, even by the administrator. &lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Navigate to your &lt;strong&gt;storage account&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Data storage&lt;/strong&gt; section, select the &lt;strong&gt;Containers&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Create a container called &lt;strong&gt;hold&lt;/strong&gt;. Take the defaults. Be sure to &lt;strong&gt;Create&lt;/strong&gt; the container.&lt;/li&gt;
&lt;/ul&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%2Ftbf18f5cejlnijdt61j6.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%2Ftbf18f5cejlnijdt61j6.png" alt="create a container" width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Upload a file to the container.&lt;/li&gt;
&lt;/ul&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%2F3wn405rw60usqpn0tw1k.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%2F3wn405rw60usqpn0tw1k.png" alt="upload a file" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Settings&lt;/strong&gt; section, select the &lt;strong&gt;Access policy&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Immutable blob storage&lt;/strong&gt; section, select &lt;strong&gt;+ Add policy&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;For the &lt;strong&gt;Policy type&lt;/strong&gt;, select &lt;strong&gt;time-based retention&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;Retention period&lt;/strong&gt; to &lt;strong&gt;5&lt;/strong&gt; days.&lt;/li&gt;
&lt;li&gt;Be sure to &lt;strong&gt;Save&lt;/strong&gt; your changes.&lt;/li&gt;
&lt;/ul&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%2F288jzj6ip5a4f7ckgebl.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%2F288jzj6ip5a4f7ckgebl.png" alt="access policy" width="800" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Try to &lt;strong&gt;delete&lt;/strong&gt; the file in the container.&lt;/li&gt;
&lt;li&gt;Verify you are notified &lt;strong&gt;failed to delete blobs&lt;/strong&gt; due to policy.&lt;/li&gt;
&lt;/ul&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%2Foa36gcr8jqicrhj76j8o.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%2Foa36gcr8jqicrhj76j8o.png" alt="try to delete" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The developers require an encryption scope that enables infrastructure encryption.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Navigate back to your storage account.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Security + networking&lt;/strong&gt; blade, select &lt;strong&gt;Encryption&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Encryption scopes&lt;/strong&gt; tab, select &lt;strong&gt;Add&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F8jc0q3gi0rvndbnzfex8.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%2F8jc0q3gi0rvndbnzfex8.png" alt="Encryption" width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give your encryption scope a &lt;strong&gt;name&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;Encryption type&lt;/strong&gt; is &lt;strong&gt;Microsoft-managed key&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Set &lt;strong&gt;Infrastructure encryption&lt;/strong&gt; to &lt;strong&gt;Enable&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create&lt;/strong&gt; the encryption scope.&lt;/li&gt;
&lt;/ul&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%2Ftxbtqxjz7zv7ulmoxgw8.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%2Ftxbtqxjz7zv7ulmoxgw8.png" alt="encryption scope" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Return to your storage account and create a new container.&lt;/li&gt;
&lt;/ul&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%2Finbjlvjh8g8wyt6lpcan.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%2Finbjlvjh8g8wyt6lpcan.png" alt="Image description" width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Notice on the &lt;strong&gt;New container&lt;/strong&gt; page, there is the &lt;strong&gt;Name&lt;/strong&gt; and &lt;strong&gt;Public access level&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Notice in the &lt;strong&gt;Advanced&lt;/strong&gt; section you can select the &lt;strong&gt;Encryption scope&lt;/strong&gt; you created and apply it to all blobs in the container.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>tutorial</category>
      <category>azure</category>
      <category>cloudcomputing</category>
      <category>data</category>
    </item>
    <item>
      <title>Creating a windows 11 virtual machine</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Thu, 26 Sep 2024 04:51:26 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/creating-a-windows-11-virtual-machine-14co</link>
      <guid>https://dev.to/afeez_adeyemo/creating-a-windows-11-virtual-machine-14co</guid>
      <description>&lt;p&gt;A &lt;strong&gt;virtual machine (VM)&lt;/strong&gt; is a software-based emulation of a physical computer. It runs an operating system and applications just like a physical computer, but it operates within a window on your current operating system. Here are some key points about virtual machines:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Isolation&lt;/strong&gt;: VMs are isolated from the host system, meaning the software inside a VM can’t interfere with the host’s primary operating system1.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flexibility&lt;/strong&gt;: You can run multiple VMs on a single physical machine, each with its own operating system. This allows you to run different OSes simultaneously2.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use Cases&lt;/strong&gt;: VMs are used for various purposes, such as testing new software, running applications that require different OSes, and creating development environments12.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cost Efficiency&lt;/strong&gt;: They help save costs by reducing the need for physical hardware and allowing better resource utilization2.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  This is a step by step procedure on how to create a windows 11 virtual machine.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Step 1: Create a windows 11 virtual machine.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Configure the virtual machine. &lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for &lt;strong&gt;virtual machines&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Ftqsyds7nfdpphv24dmv2.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%2Ftqsyds7nfdpphv24dmv2.png" alt="search for virtual machine" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;+ create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fankuvo92vfwlruye0q5y.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%2Fankuvo92vfwlruye0q5y.png" alt="select + create" width="800" height="335"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the &lt;strong&gt;Basics&lt;/strong&gt; tab.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;On the project details

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Create new&lt;/strong&gt; resource group and give it a unique name.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fm1y5dnw0pbqlfgsnoshm.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%2Fm1y5dnw0pbqlfgsnoshm.png" alt="Resource group" width="800" height="317"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the Instance details

&lt;ul&gt;
&lt;li&gt;On the &lt;strong&gt;virtual machine name&lt;/strong&gt;, give your virtual machine a unique name. Just like other computers, virtaul machines have names&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;region&lt;/strong&gt; as appropriate.&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;Availabilty zone&lt;/strong&gt; to &lt;strong&gt;Zone 1&lt;/strong&gt;. This will back-up the virtual machine in 3 data centers. You can pick more Zones to create the VM in more data centers&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fqx3gpuu71dmywsnwvg2q.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%2Fqx3gpuu71dmywsnwvg2q.png" alt="Instance details 1" width="800" height="330"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;on drop down menu for &lt;strong&gt;image&lt;/strong&gt; select &lt;strong&gt;Windows 11 Pro, version 22H2 - x64 Gen2&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the Administrator account.&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;Username&lt;/strong&gt; to your name.&lt;/li&gt;
&lt;li&gt;Set &lt;strong&gt;password&lt;/strong&gt; and &lt;strong&gt;confirm password&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fhfhu8z7lcapybwdvu3sj.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%2Fhfhu8z7lcapybwdvu3sj.png" alt="instance details 2" width="800" height="192"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set the &lt;strong&gt;inbound port rules&lt;/strong&gt;.

&lt;ul&gt;
&lt;li&gt;Select the &lt;strong&gt;Allow selected ports&lt;/strong&gt; for the &lt;strong&gt;public inbound ports&lt;/strong&gt;. This will ensure the VM can be accessed via public internet.&lt;/li&gt;
&lt;li&gt;On the drop-down menu for &lt;strong&gt;Select inbound ports&lt;/strong&gt;t, select &lt;strong&gt;RDP 3389&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2F8xz156w7lumqt7iq2ivf.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%2F8xz156w7lumqt7iq2ivf.png" alt="inbound port rules" width="800" height="199"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the &lt;strong&gt;Monitoring&lt;/strong&gt; tab.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Check &lt;strong&gt;Disable&lt;/strong&gt; for boot diagnostic. This will ensure azure does not have access to the activities of the virtual machine.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Review and create&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2F2nuzlnhh6dgcod4l81u1.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%2F2nuzlnhh6dgcod4l81u1.png" alt="Monitoring tab" width="800" height="310"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for it to validate&lt;/li&gt;
&lt;li&gt;select &lt;strong&gt;create&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2F5nf4keygup8rqsz91bf1.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%2F5nf4keygup8rqsz91bf1.png" alt="create" width="800" height="331"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for it to &lt;strong&gt;complete deployment&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Futcn64j5c4je7n25k2ns.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%2Futcn64j5c4je7n25k2ns.png" alt="deployment in progress" width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;When &lt;strong&gt;deployment is complete&lt;/strong&gt;. Select &lt;strong&gt;go to resource&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fdid9sm2ywe54pdg9fa8t.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%2Fdid9sm2ywe54pdg9fa8t.png" alt="deployment is complete" width="800" height="321"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Configuring the Virtual machine.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Click the &lt;strong&gt;Public IP address&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Ftczyouxnzt5puee2ezl8.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%2Ftczyouxnzt5puee2ezl8.png" alt="Public IP address" width="800" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Drag the &lt;strong&gt;Idle timeout (minutes)&lt;/strong&gt; to 30. This will ensure the VM doesnt time out to often while in use.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Save&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F7c3f0p7oc3a4eusk4enk.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%2F7c3f0p7oc3a4eusk4enk.png" alt="set idle timeout" width="800" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Starting up the Virtual machine.
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;Connect&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&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%2Fa8rqb4jj5afcw5dr6a8f.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%2Fa8rqb4jj5afcw5dr6a8f.png" alt="Connect VM" width="800" height="328"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the VM to get &lt;strong&gt;configured&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;Download RDP file&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fzf44gzoznvus2oadtls7.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%2Fzf44gzoznvus2oadtls7.png" alt="Download RDP file" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open the downloaded file. Enter &lt;strong&gt;password&lt;/strong&gt; that was previously set. Click &lt;strong&gt;OK&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fbr1asf7dgrkqxhd7j6kp.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%2Fbr1asf7dgrkqxhd7j6kp.png" alt="Log into virtual machine" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The VM is launched&lt;/li&gt;
&lt;/ul&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%2Fpgnw0trk527452x6t9ri.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%2Fpgnw0trk527452x6t9ri.png" alt="VM home page" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The VM can now be used as your regular computer.&lt;/p&gt;

&lt;p&gt;I hope this is helpful, please drop questions/comments/observations in comment section.&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>azure</category>
      <category>virtualmachine</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Provide private storage for internal company documents</title>
      <dc:creator>Afeez Adeyemo</dc:creator>
      <pubDate>Tue, 24 Sep 2024 10:28:12 +0000</pubDate>
      <link>https://dev.to/afeez_adeyemo/provide-private-storage-for-internal-company-documents-co6</link>
      <guid>https://dev.to/afeez_adeyemo/provide-private-storage-for-internal-company-documents-co6</guid>
      <description>&lt;p&gt;&lt;strong&gt;Skilling tasks&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a storage account for the company private documents.&lt;/li&gt;
&lt;li&gt;Configure redundancy for the storage account.&lt;/li&gt;
&lt;li&gt;Configure a shared access signature so partners have restricted access to a file.&lt;/li&gt;
&lt;li&gt;Back up the public website storage.&lt;/li&gt;
&lt;li&gt;Implement lifecycle management to move content to the cool tier.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Table of content&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Step 1: Create a storage account and configure high availability.&lt;/p&gt;

&lt;p&gt;Step 2: Create a storage container, upload a file, and restrict access to the file.&lt;/p&gt;

&lt;p&gt;Step 3: Configure storage access tiers and content replication.&lt;/p&gt;

&lt;h2&gt;
  
  
  Follow these basic steps to create private storage for internal company documents
&lt;/h2&gt;

&lt;p&gt;Step 1: Create a storage account and configure high availability.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a storage account for the internal private company documents.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select &lt;strong&gt;Storage accounts&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fkcxn7djv601oox7izip9.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%2Fkcxn7djv601oox7izip9.png" alt="select storage account" width="800" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select &lt;strong&gt;+ Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F74wkwgdhbroaypv62qb4.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%2F74wkwgdhbroaypv62qb4.png" alt="select + create" width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the &lt;strong&gt;Resource group&lt;/strong&gt; created in the previous lab.&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;Storage account name&lt;/strong&gt; to &lt;strong&gt;private&lt;/strong&gt;. Add an identifier to the name to ensure the name is unique.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Review&lt;/strong&gt;, and then &lt;strong&gt;Create&lt;/strong&gt; the storage account.&lt;/li&gt;
&lt;/ul&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%2Frz719qvnjzw6eqy1so5t.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%2Frz719qvnjzw6eqy1so5t.png" alt="review and create storage account" width="800" height="362"&gt;&lt;/a&gt;&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%2F7s1i5rtu4v49udr81bm0.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%2F7s1i5rtu4v49udr81bm0.png" alt="create storage account" width="800" height="354"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wait for the storage account to deploy, and then select &lt;strong&gt;Go to resource&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fmyntr3s11g5dxhu0qajh.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%2Fmyntr3s11g5dxhu0qajh.png" alt="Go to resource" width="800" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;This storage requires high availability if there’s a regional outage. Read access in the secondary region is not required. Configure the appropriate level of &lt;strong&gt;redundancy&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In the storage account, in the &lt;strong&gt;Data management&lt;/strong&gt; section, select the &lt;strong&gt;Redundancy&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Ensure &lt;strong&gt;Geo-redundant storage (GRS)&lt;/strong&gt; is selected.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Refresh&lt;/strong&gt; the page.&lt;/li&gt;
&lt;/ul&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%2Fm03efru6onfgig0twfca.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%2Fm03efru6onfgig0twfca.png" alt="Geo-redundant storage" width="800" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Review the primary and secondary location information.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Save&lt;/strong&gt; your changes.&lt;/li&gt;
&lt;/ul&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%2Fgxb6sb0meh1w27vpsvy2.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%2Fgxb6sb0meh1w27vpsvy2.png" alt="save location info" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 2: Create a storage container, upload a file, and restrict access to the file.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a private storage container for the corporate data.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In the storage account, in the &lt;strong&gt;Data storage&lt;/strong&gt; section, select the &lt;strong&gt;Containers&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;+ Container&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Ensure the &lt;strong&gt;Name&lt;/strong&gt; of the container is private.&lt;/li&gt;
&lt;li&gt;Ensure the &lt;strong&gt;Public access level&lt;/strong&gt; is &lt;strong&gt;Private (no anonymous access)&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;As you have time, review the &lt;strong&gt;Advanced&lt;/strong&gt; settings, but take the defaults.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fwgx79f05i1gdmoe29duy.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%2Fwgx79f05i1gdmoe29duy.png" alt="create container" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;For testing, upload a file to the &lt;strong&gt;private&lt;/strong&gt;container. the type of file doesn’t matter. A small image or text file is a good choice. Test to ensure the file isn’t publically accessible.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Select the &lt;strong&gt;container&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Upload&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Browse to files and select a file.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Upload&lt;/strong&gt; the file.&lt;/li&gt;
&lt;/ul&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%2Fepg2foi9tcvyzfngjxft.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%2Fepg2foi9tcvyzfngjxft.png" alt="upload file in a container" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the &lt;strong&gt;uploaded file&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F3we1fe8oah4pernm55si.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%2F3we1fe8oah4pernm55si.png" alt="select uploaded file in a container" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the Overview tab, &lt;strong&gt;copy the URL&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Feb81yv4eizwpixxsmzk8.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%2Feb81yv4eizwpixxsmzk8.png" alt="copy URL of a file" width="800" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Paste the &lt;strong&gt;URL&lt;/strong&gt; into a new browser tab.&lt;/li&gt;
&lt;li&gt;Verify the file doesn’t display and you receive an error.&lt;/li&gt;
&lt;/ul&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%2F6kjdqwq356n8zv7dzf33.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%2F6kjdqwq356n8zv7dzf33.png" alt="check accessibilty of an uploaded file" width="800" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;An external partner requires read and write access to the file for at least the next 24 hours. Configure and test a shared access signature (SAS). &lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Select your uploaded blob file and move to the &lt;strong&gt;Generate SAS&lt;/strong&gt; tab.&lt;/li&gt;
&lt;/ul&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%2Faiqamr9ymzk95n8hhchf.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%2Faiqamr9ymzk95n8hhchf.png" alt="General SAS" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Permissions&lt;/strong&gt; drop-down, ensure the partner has only &lt;strong&gt;Read&lt;/strong&gt; permissions.&lt;/li&gt;
&lt;li&gt;Verify the &lt;strong&gt;Start and expiry date/time&lt;/strong&gt; is for the next 24 hours.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Generate SAS token and URL&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Feeu6rp2m3hqa1nuylxjz.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%2Feeu6rp2m3hqa1nuylxjz.png" alt="generate SAS token and URL" width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Copy the &lt;strong&gt;Blob SAS URL&lt;/strong&gt; to a new browser tab.&lt;/li&gt;
&lt;/ul&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%2Fx8soplz0wxy4t1ro0nyy.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%2Fx8soplz0wxy4t1ro0nyy.png" alt="copy BLOB SAS URL" width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Verify you can access the file. If you have uploaded an image file it will display in the browser. Other file types will be downloaded.&lt;/li&gt;
&lt;/ul&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%2F79c242mc0zg57hffxanj.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%2F79c242mc0zg57hffxanj.png" alt="verify file can be accessed via BLOB SAS URL" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 3: Configure storage access tiers and content replication.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To save on costs, after 30 days, move blobs from the hot tier to the cool tier. &lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Return to the &lt;strong&gt;storage account&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Overview&lt;/strong&gt; section, notice the &lt;strong&gt;Default access tier&lt;/strong&gt; is set to &lt;strong&gt;Hot&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Ftv81dwfguc0ngryh1whn.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%2Ftv81dwfguc0ngryh1whn.png" alt="setting default access tier to hot" width="800" height="354"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Data management&lt;/strong&gt; section, select the &lt;strong&gt;Lifecycle management&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Add rule&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Flhw15jwszmg0vft7ig2u.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%2Flhw15jwszmg0vft7ig2u.png" alt="add rule to lifecycle management" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set the &lt;strong&gt;Rule name&lt;/strong&gt; to &lt;strong&gt;movetocool&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Set the &lt;strong&gt;Rule scope&lt;/strong&gt; to &lt;strong&gt;Apply rule to all blobs in the storage account&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Next&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fts1urr5morygt3icmuh8.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%2Fts1urr5morygt3icmuh8.png" alt="movetocool" width="800" height="358"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ensure &lt;strong&gt;Last modified&lt;/strong&gt; is selected.&lt;/li&gt;
&lt;li&gt;Set &lt;strong&gt;More than (days ago)&lt;/strong&gt; to &lt;strong&gt;30&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;Then&lt;/strong&gt; drop-down select &lt;strong&gt;Move to cool storage&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;As you have time, review other lifecycle options in the drop-down.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Add&lt;/strong&gt; the rule.&lt;/li&gt;
&lt;/ul&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%2Fbn53tfivn8mie3f2kiex.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%2Fbn53tfivn8mie3f2kiex.png" alt="move to cool storage setting" width="800" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The public website files need to be backed up to another storage account.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;In your storage account, &lt;strong&gt;create&lt;/strong&gt; a new container called backup. Use the default values. Refer back to Lab 02a if you need detailed instructions.&lt;/li&gt;
&lt;/ul&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%2F1mk8tdih9ctafaiwjnep.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%2F1mk8tdih9ctafaiwjnep.png" alt="create new container" width="800" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Navigate to your &lt;strong&gt;publicwebsite&lt;/strong&gt; storage account. This storage account was created in the previous exercise.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Data management&lt;/strong&gt; section, select the &lt;strong&gt;Object 
replication&lt;/strong&gt; blade.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Create replication rules&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&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%2Fvqv4l9fmoxt3qva7j5v6.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%2Fvqv4l9fmoxt3qva7j5v6.png" alt="creating replication rules" width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set the &lt;strong&gt;Destination storage account&lt;/strong&gt; to the &lt;strong&gt;private&lt;/strong&gt; 
storage account.&lt;/li&gt;
&lt;/ul&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%2F1b6sio6vxh41qof47d9d.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%2F1b6sio6vxh41qof47d9d.png" alt="setting destination storage account" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set the &lt;strong&gt;Source container&lt;/strong&gt; to &lt;strong&gt;public&lt;/strong&gt; and the 
&lt;strong&gt;Destination container&lt;/strong&gt; to &lt;strong&gt;backup&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create&lt;/strong&gt; the replication rule.&lt;/li&gt;
&lt;/ul&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%2F8ied0nmntqiymb1q3ijp.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%2F8ied0nmntqiymb1q3ijp.png" alt="creating replication rule" width="800" height="347"&gt;&lt;/a&gt;&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%2Fy2izgkbgz5a356ysh15o.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%2Fy2izgkbgz5a356ysh15o.png" alt="result of replication rule" width="800" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Optionally, as you have time, upload a file to the &lt;strong&gt;public&lt;/strong&gt; container. Return to the &lt;strong&gt;private&lt;/strong&gt; storage account and refresh the &lt;strong&gt;backup&lt;/strong&gt; container. Within a few minutes your public website file will appear in the backup folder.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>tutorial</category>
      <category>database</category>
      <category>cloud</category>
      <category>azure</category>
    </item>
  </channel>
</rss>
