- Go 1.22.2
- Docker Desktop
- golang-migrate
- sqlc
- mockgen
- AWS CLI - v2
- kubectl
- eksctl
- minikube
- If you don't already have
postgres:16-alpinedocker image;
# Pull docker image
docker pull postgres:16-alpine
# Run postgres docker container
make postgres
# Create database in postgres docker container
make createdb
# Run migration
make migrateupFor more scripts checkout Makefile
- Create env file
cp app.example.env app.env- Start minikube k8s cluster
minikube start- Set minikube docker env
eval $(minikube docker-env)- Build simplebank docker image
docker build . -t aseerkt/simplebank:latest- Create simplebank* namepsace
kubectl create namespace simplebank- Apply simplebank k8s deployment objects
kubectl apply -f eks/deployment.ymlkubectl delete -f eks/deployment.ymldocker rmi aseerkt/simplebank:latesteval $(minikube docker-env --unset)minikube stop && minikube delete- Create IAM user with required permissions and create access key
- Configure AWS CLI
aws configure