This repository contains the source code of my personal website (Update: Site is no longer live cause the GCP managed K8s cluster is too costly)
The project consists of two containerized applications: frontend, backend
- Install minikube and helm with homebrew
brew install minikube
brew install helm
- Start minikube cluster
minikube start
- Enable nginx-ingress addon
minikube addons enable ingress
- Create the required k8s resources in the cluster
- namespace
- secrets: gcr-json-key, contentful
- Check your minikube ip
Make sure the minikube ip address is in configmap as value for NEXT_PUBLIC_MINIKUBE_IP
minikube ip
- Install helm chart
helm upgrade --install personal-website ./chart --values ./chart/values-local.yaml
- Visit your minikube ip on your browser
Before you run applications with docker-compose, make sure all environment variables are in place at each application
- Clone this repository
git clone {this repo}
- Build docker images
docker-compose build
- Run applications
docker-compose up
- Check the website on your browser
localhost:3000