Setting up an AWS account

The first step on your AWS journey is to establish an AWS account, which is a foundational building block of AWS that defines a security and administrative context for managing your AWS services and resources that you consume. To encourage adoption of AWS and ensure that first time users have an opportunity to try out AWS for free, AWS offers a free tier that grants you free access to some AWS services (with some limitations around usage). You can find out more about the free tier and what services are offered at https://aws.amazon.com/free/. Make sure you have a good understanding of what you can and can't use for free to avoid an unnecessary bill shock. 

In this book, we will make use of a number of free tier services with the following monthly usage limits:

Service Limit
EC2 750 hours of Linux t2.micro (Single vCPU, 1 GB Memory) instance
Elastic Block Storage 30 GB block-level storage (SSD or traditional spinning disk)
RDS 750 hours of db.t2.micro (Single vCPU, 1 GB Memory) MySQL instance
Elastic Container Registry 500 MB of storage
Elastic Load Balancing 750 hours of classic or application load balancers
S3 5 GB of S3 storage
Lambda 1,000,000 requests
CloudWatch 10 custom metrics
SNS 1,000,000 publications
CodeBuild 100 build minutes
CodePipeline 1 active pipeline
X-Ray 100,000 traces
Key Management Service 20,000 requests
Secrets Manager 30-day free trial period, then $0.40 per secret/month

 

As you can see, we will be covering a number of AWS services in this book and almost all of them are free, assuming you honor the usage limits described in the preceding table. In fact, the only service that we will use in this book that is not free is the AWS Fargate service, so bear this in mind when you read through the Fargate chapter and try to minimize your usage if you are worried about the cost of this.

To sign up for free tier access, click on the Create a Free Account button at https://aws.amazon.com/free/:

Creating a free account

You will be prompted to enter an email address, password, and AWS account name. It's important to understand that the email address and password you enter here is referred to as the root account for your AWS account, which has the highest level of access to your account. For the AWS account name, you can enter any name you like, however it must be unique across all of the other AWS accounts, so at the very least you won't be able to use the account name I chose, which is docker-in-aws. This account name is used when you sign in and is much easier to remember than your AWS account number, which is a 12-digit number.

The rest of the sign-up process is self-explanatory, so I won't bore you with the details here, but understand that you will be required to provide credit card details and will be responsible for any charges over and above the free tier usage limits. You will also be required to verify the phone number you specify during signup, which involves an automated phone call to your number, so ensure you enter a valid phone number during registration.