docker & kubernetes

Post on 16-Apr-2017

163 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

DEPLOYING DOCKER TOGOOGLE CLOUD PLATFORM

USING KUBERNETES

Troy Harvey@troyharveyGeneration Tux

https://www.docker.com/what-docker

http://www.eaiesb.com/blogs/?p=80

https://www.docker.com/survey-2016

1.DOCKERINDEV2.DEPLOYDOCKER

1

WAMP Vagrant

Shared drive on Dev server

php -S

webpackssh + vim (on prod)

Dev VM

python -m SimpleHTTPServer

virtualenvwrapper

bin/rails server

https://flurdy.com/docs/docker/docker_osx_ubuntu.html

☞Dockerfile Container Image

$ docker build -t us.gcr.io/kubernetes-demo/docker-demo.base:latest \-f ./docker/base.dockerfile .

USEBASEIMAGES

docker build -t us.gcr.io/kubernetes-demo/docker-demo:latest \-f ./docker/app.dockerfile .

12FACTORAPP RULE#3

DOCKERRUN

NATIVEFILESYNCINGdocker run -d -p 5000:5000 \-v ~/Projects/docker-demo/:/app \us.gcr.io/kubernetes-demo/docker-demo:latest

…don’t be mad, Vagrant.

2

STORINGDOCKERIMAGES

gcloud docker push us.gcr.io/kubernetes-demo-1327/docker-demo:latest

DEPLOYINGDOCKER

https://www.youtube.com/watch?v=8694GGJlpZ8

$ kubectl create -f ./kubernetes/flask-controller.jsonreplicationcontroller "flask-api" created

$ kubectl create -f ./kubernetes/flask-service.jsonservice "flask-service" created

$ kubectl get servicesNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGEflask-service 10.3.249.175 104.154.233.1 80/TCP 2m

VERSION1.2DROPS

gcloud docker push us.gcr.io/kubernetes-demo/docker-demo:1.2.0

☝️

$ kubectl rolling-update flask-api \--image=us.gcr.io/kubernetes-demo/docker-demo:1.2.0

Scaling up flask-api-8e516770df4cc01c122ca27915b6d3bc from 0 to 3,scaling down flask-api from 3 to 0(keep 3 pods available, don't exceed 4 pods)

Scaling flask-api-8e516770df4cc01c122ca27915b6d3bc up to 1Scaling flask-api down to 2Scaling flask-api-8e516770df4cc01c122ca27915b6d3bc up to 2Scaling flask-api down to 1Scaling flask-api-8e516770df4cc01c122ca27915b6d3bc up to 3Scaling flask-api down to 0Update succeeded.Deleting old controller: flask-apiRenaming flask-api-8e516770df4cc01c122ca27915b6d3bc to flask-apireplicationcontroller "flask-api" rolling updated

👇

top related