Shiny app for the game of Farkle
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
shiny
templates
.dockerignore
.gcloudignore
.gitignore
.helmignore
Chart.yaml
Dockerfile
README.md
cloudbuild.yaml
infrastructure.tf

README.md

About

Shiny app for analyzing the game of Farkle. My blog post summarizing the app is here.

Infrastructure

Create GKE cluster and install Helm Tiller.

export PROJECT_ID=$(gcloud config get-value project -q)
terraform apply -var project=${PROJECT_ID}

gcloud container clusters get-credentials shiny-cluster
gcloud config set container/cluster shiny-cluster

helm init

Deploy Instructions - Manually

Build Docker image, push to GCR, and then deploy to GKE cluster using Helm.

docker build -t farkle:latest .
docker run --rm -p 3838:3838 farkle:latest # test that it works locally

export PROJECT_ID=$(gcloud config get-value project -q)
docker tag farkle gcr.io/${PROJECT_ID}/shiny-farkle:latest
gcloud docker -- push gcr.io/${PROJECT_ID}/shiny-farkle
gcloud container images list-tags gcr.io/${PROJECT_ID}/shiny-farkle

helm upgrade --install --set projectId=${PROJECT_ID} shiny-farkle .

Deploy Instructions - Google Container Builder

NOTE: For this approach, you will need to add a Helm cloud-builder step to your GCR. Instructions for this here.

NOTE: You will also need to add "Kubernetes Enginer Developer" role to your GCB service account so that it can fetch cluster credentials.

gcloud container builds submit --config cloudbuild.yaml .