Open adamberenzweig opened 7 years ago
Try deploying to kubernetes anywhere (AWS or GC first?). Keep docker hub for now, but get rid of docker cloud and build locally.
nginx-proxy doesn't seem to work, I think because of the way kubernetes uses docker diferently.i ssh’ed to container, /tmp/docker.sock exists, but can’t read it... and nginx config gets empty upstream section.
I looked at a few other options for load balancing, https termination, and virtualhost-based routing.
The modern kubernetes way appears to be an Ingress resource, but it's a beta feature. There is an nginx implementation though: https://github.com/nginxinc/kubernetes-ingress
I implemented a basic version of that but some things remain TODO:
The first two should eventually be handled by an AWS-specific ingress controller, but it hasn't apepared yet. See https://github.com/kubernetes/contrib/issues/346
Update in https://github.com/minderlabs/framework/pull/44 Not using Ingress, back to plain service with LoadBalancer, using annotation to configure SSL termination. Will manually configure route53 for now.
Kubernetes looks good, next steps:
DNS: We can use a CNAME at the top-level config (google domains) to alias nicer addresses to the ugly kubernetes-cluster names in the route53 hosted zone. i.e.:
www CNAME www.prod.k.minderlabs.com
app CNAME app.prod.k.minderlabs.com
www-dev CNAME www.dev.k.minderlabs.com
Motivation
roadmap