Docker: verschil tussen versies

Uit Wiki Durk 'o' Theek
Ga naar: navigatie, zoeken
(Nieuwe pagina aangemaakt met 'Docker is het buzzword van de huidige tijd. Minder zwaar dan virtuele machines, goede scheiding van de containers. Daarom een overzicht van de mogelijkheden. [http...')
 
Regel 2: Regel 2:
  
 
[https://www.synology.com/nl-nl/dsm/app_packages/Docker Docker voor je Synology NAS-sen]
 
[https://www.synology.com/nl-nl/dsm/app_packages/Docker 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
 +
 +
[https://github.com/docker/compose/releases 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
 +
 +
[https://github.com/docker/machine/releases 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
 +
 +
[https://github.com/kubernetes/kubernetes/releases 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

Versie van 28 apr 2017 om 22:23

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