Example Website Workload – Amazon Elastic Container Service (ECS) with Application Load Balancer and DNS (Route53), including NAT Gateway

The Amazon Elastic Container Service (ECS), specifically Fargate allows you to run containers on an ad-hoc basis.  The following guide assumes you have already deployed an Amazon Elastic Container Registry (ECR), built your image, pushed it to the ECR and have obtained the Repository URI. The guide also uses local Terraform state, please see the […]

More...

Example Website Workload – AWS Elastic Container Service (AWS) with ALB, Route53 and Certificate

The below gives a simple example showing how you can deploy a containerised workload: a NGINX web server in this example which has two (or more) containers (tasks) running on AWS Fargate, presented behind a “Service” definition which is then presented to the Internet via an Application Load Balancer (ALB) where a certificate is obtained […]

More...

Example Website Workload – AWS Elastic Container Registry

The Amazon Container Registry (ECR) allows you to store the images within the cloud, for the purposes of this example we’ll use a simple container using a Dockerfile that creates an Apache web server that says “Hello World!”. Repository The example Terraform definitions can be found within Gitlab: Step 1 – Deploy Terraform You first need […]

More...

Create an A Record and an Apex (Root) A Record (using Terraform) within Route53

When using Route53 for DNS, you have the option of using a special AWS only type of record for the Apex or Root record of the domain (zone). Taking an example domain.com, you typically would have a website which has an A record called www.domain.com. But what if you want to have the apex of the domain […]

More...

Show Available AWS Aurora MySQL Database Engines

To get a list of current AWS Aurora MySQL (compatible) Database Engines you can use the following command from the AWS CLI: So you’ll get an output like: At the time of writing (05/02/25) the recommended/default version is: 8.0.mysql_aurora.3.05.2, but remember that the list of Database Engines that are provided will include ones that are […]

More...

Terraform – AWS Assign Pre-existing Elastic IP Address to an EC2 Instance

Elastic IP Addresses (EIP) are great as they provide you with a static IP address which you can use for an endpoint to your application, but when you are automating things with Terraform, you don’t want it to be continually re-created or that IP address will change, and if you have DNS records pointing at […]

More...

AWS Transit Gateway with VPN to On-Premise Palo Alto Firewall

The AWS Transit Gateway can be used to join the networking of many VPCs (in the same or different AWS Accounts) within the same region together to facilitate communication, it may also be used in conjunction with DX (Direct Connect) or Site-to-Site VPNs to provide connectivity to other Cloud Platforms but additionally to on-premise networks […]

More...