-
Notifications
You must be signed in to change notification settings - Fork 2
Terraform infrastructure definition, Docker image definition, GitHub actions, and configuration to run a typescript React app served by Node Express on an AWS Elastic Kubernetes Service cluster
ThomasPortwood/eks-express-react-ts
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This repository is for my own educational purposes.
It contains Terraform infrastructure definition, Docker image definition, GitHub action definition, and configuration to serve a typescript React app with Node Express on AWS Elastic Kubernetes Service.
Terraform Cloud manages infrastructure state.
GitHub Actions builds the Docker image, and GitHub Packages stores it.
Steps:
-
Get set up on AWS Elastic Kubernetes Service
-
Set up authorization to access your Docker registry from Kubernetes
- kubectl create secret docker-registry regcred --namespace= --docker-server= --docker-username= --docker-password=
-
Create version control repository
-
Get set up on Terraform Cloud:
- create account
- create workspace
- link the workspace to version control system repository
- define variables
-
Push code to the version control repository to trigger a Terraform run which will:
- create Kubernetes resources
- namespace
- node deployment and service
- ingress
- create Kubernetes resources
- TODO
- kubernetes secret for github package access in terraform
- ssl cert via terraform
- route53 records via terraform https://www.terraform.io/docs/providers/aws/r/route53_record.html
- document usage of react-admin
About
Terraform infrastructure definition, Docker image definition, GitHub actions, and configuration to run a typescript React app served by Node Express on an AWS Elastic Kubernetes Service cluster