Docker

Uit Wiki Durk 'o' Theek
Versie door Durkio (Overleg | bijdragen) op 28 apr 2017 om 22:23

Ga naar: navigatie, zoeken

Docker is het buzzword van de huidige tijd. Minder zwaar dan virtuele machines, goede scheiding van de containers. Daarom een overzicht van de mogelijkheden.

Docker voor je Synology NAS-sen

Opdracht CT magazine mei 2016

[github.com/inovex/docker-orchestration TODO-app]

Getest met Debian 8 Jessie. docker.io zit in backports-repository

sudo docker network create todoapp_network

sudo docker run --net=todoapp_network --name=redis-master -d redis

sudo docker run --net=todoapp_network --name=redis-slave -d johscheuer/redis-slave:v1

sudo docker run --net=todoapp_network --name=frontend -d -p 3000:3000 johscheuer/todo-app-web:v1

sudo docker inspect frontend geeft het IP-adres waar je via poort 3000 de frontend kunt bereiken

Containers beheren met Compose

Github van Compose

sla docker-compose op in /usr/local/bin en maak met CMD +x uitvoerbaar

ga naar de submap 1-Docker-Tools van de todo-app en voer onderstaand commando uit

sudo docker-compose up -d

sudo docker-compose port todoApp 3000

Dit commando geeft je het ip-adres terug

Machine voor verdelen containers

Github van Machine

docker-machine create -d virtualbox cluster-store

docker $(docker-machine config cluster-store) run -d -p "8500:8500" -h "consul" progrium/consul -server -bootstrap -ui-dir /ui

omgevingsvariabele OPTIONS bewaart de configuratie voor de andere hosts

OPTIONS="-d virtualbox --swarm --swarm-discovery=consul://$(docker-machine ip cluster-store):8500 --engine-opt=cluster-store=consul://$(docker-machine ip cluster-store):8500 --engine-opt=cluster-advertise=eth1:0"

docker-machine create ${OPTIONS} -- swarm-master swarm-master

docker-machine create ${OPTIONS} swarm-node-00

docker-machine create ${OPTIONS} swarm-node--01

docker-machine ls toont de draaiende machines

eval $(docker-machine env --swarm swarm-master)

docker-compose up -d

Hiermee start je de todo-app over de 3 aangemaakte virtuele machines


Kubernetes host-overkoepelende orkestratie

Github voor Kubernetes

export KUBERNETES_PROVIDER=vagrant

export NUM_NODES=3

export KUBERNETES_MEMORY=1024

export MASTER_USER=appuser

export MASTER_PASSWD=k8s-gEhEIm

./cluster/kube-up.sh

./cluster/kubectl.sh get nodes

controleert of ze alle 3 gestart zijn. kubectl.sh cluster-info toont info over de master en het cluster in zijn geheel