2. About me
• Senior Engineering Manager at Cisco Systems Data Center
group
• Author of “Mastering CoreOS”
https://www.packtpub.com/networking-and-
servers/mastering-coreos/ )
• Docker
Captain(https://www.docker.com/community/docker-
captains )
• Blog: https://sreeninet.wordpress.com/
• Code hacks: https://github.com/smakam
• Linkedin: https://in.linkedin.com/in/sreenivasmakam
• Twitter: @srmakam
3. Docker host choices
Windows:
Toolbox or native Windows host can be used.
https://www.docker.com/products/docker-toolbox
https://docs.docker.com/docker-for-windows/
Mac:
Toolbox or native Mac host can be used.
https://docs.docker.com/docker-for-mac/
Cloud:
AWS, Google Cloud or Azure can be used.
Note:
Docker-machine can be used to manage multiple hosts easily
(https://docs.docker.com/machine/)
4. Azure and Docker hub access
Microsoft azure pass redeem instructions:
• https://www.microsoftazurepass.com/howto
Create microsoft account:
• https://login.live.com/
Azure account access:
• https://account.windowsazure.com
Docker hub account:
• https://hub.docker.com/
5. Azure notes
Virtual machine to use for Linux:
Select "Docker on Ubuntu server“. Docker is preinstalled in
this VM.
Virtual machine to use for Windows:
Select “Windows Server 2016 Datacenter - with Containers”
VM.
Expose ports:
Use “Endpoints” under VM. (This is the only option available
under “classic” azure mode)
Under ARM, use Network security group to expose ports.
More details (http://azureblogger.com/2016/02/azure-vms-
allowing-communication-on-selected-ports/)
6. Labs
Link:
http://training.docker.com/category/docker-mentor-week
Linux beginner: (Lab 1)
• pulling and running docker images
• exposing ports
• Dockerfile - to build container images
• Python Flask app that displays random cat pix
• multi-container voting app using docker-compose
Windows beginner: (Lab 2)
• Setting up Windows server with Docker
• Running simple Contianer
• Multi-container app using Compose
Operations beginner: (Lab 3)
• Dockercoins app deployment using compose
• Swarm mode setup
• Swarmkit
• Docker service
• Setup local registry and push images to local registry
• create overlay network
• deploy service
• Scale app
8. Ports to open up for Swarm (Lab 3)
• TCP port 2377 for cluster management
communications
• TCP and UDP port 7946 for communication
among nodes
• TCP and UDP port 4789 for overlay network
traffic
9. Dockercoins app (Lab 3)
How DockerCoins works:
• Worker asks to rng to give it random bytes
• Worker feeds those random bytes into hasher
• Each hash starting with 0 is a DockerCoin
• DockerCoins are stored in redis
• redis is also updated every second to track
speed
• You can see the progress with the webui
https://github.com/jpetazzo/orchestration-
workshop/tree/master/dockercoins