Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.
  • Labs icon Lab
  • A Cloud Guru
Google Cloud Platform icon
Labs

Create a Custom AMI in AWS

The AMIs provided by AWS contain little more than just the operating system. So to run a PHP web application, for example, you would need to install Apache and PHP. This can be done automatically using User Data, or with an automation tool like Chef or Puppet. Doing it that way extends the wait time to instance "readiness." Many applications, such as those in an autoscaling environnemt, need instances ready to use immediately. By creating custom AMIs we can lauch pre-configured instances and skip the wait. Note: For Windows PuTTY ssh connections to EC2 instances, see: https://linuxacademy.com/blog/linux/connect-to-amazon-ec2-using-putty-private-key-on-windows/ or https://www.youtube.com/watch?v=bi7ow5NGC-U For information on using the Cloud Playground, see: https://support.linuxacademy.com/hc/en-us/articles/360019096651-Cloud-Playground-FAQ#how_connect ** Please reference the updated commands provided in the Objectives section.

Google Cloud Platform icon
Labs

Path Info

Level
Clock icon Intermediate
Duration
Clock icon 1h 0m
Published
Clock icon Jul 22, 2018

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    Launch a Configuration Instance

    Launch an instance from a Base AWS Linux AMI:

    • Login to the Management Console
    • Launch EC2 instance using the AWS Linux AMI:
      • t2.micro
      • Public IP
      • Create a Security Group with SSH (TCP 22) an HTTP (TCP 80) access
      • Download a Key Pair
  2. Challenge

    Install Apache and PHP

    SSH to the instance and execute the following commands to install Apache and PHP: (Windows users see: https://www.youtube.com/watch?v=bi7ow5NGC-U for using PuTTY for SSH)

    • sudo yum update -y
    • sudo yum install -y httpd php
    • sudo systemctl start httpd
    • sudo systemctl enable httpd

    Create a PHP page with the following commands:

    • sudo usermod -a -G apache ec2-user
    • sudo chown -R ec2-user:apache /var/www
    • echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php

    To display the PHP Info page, open a web browser to: [Your EC2 Instance's Public IP]/phpinfo.php

  3. Challenge

    Create a Custom AMI

    In the EC2 Management Console, create an image from the config instance:

    • Select the instance in the console
    • Under the Actions menu, choose Create Image:
      • Name the Image
    • Launch an instance from the new Image by going under "MyAMI's"
    • Configure the new instance's details as before.
    • Verify the PHP page displays in the browser as before (you can use your existing SG that you created).

The Cloud Content team comprises subject matter experts hyper focused on services offered by the leading cloud vendors (AWS, GCP, and Azure), as well as cloud-related technologies such as Linux and DevOps. The team is thrilled to share their knowledge to help you build modern tech solutions from the ground up, secure and optimize your environments, and so much more!

What's a lab?

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.

Start learning by doing today

View Plans