@xcoulon#Devoxx #Docker #Eclipse Docker Tooling for Java EE Developers Xavier Coulon Red Hat
@xcoulon#Devoxx #Docker #Eclipse About the speaker • Senior Software Engineer • Working at Red Hat for 4 years • JBoss Tools team member • Committer on Docker Tooling at Eclipse.org • Side project: http://github.com/lambdamatic/
Introduction @xcoulon#Devoxx #Docker #Eclipse
@xcoulon#Devoxx #Docker #Eclipse Docker components • Images • Containers • Daemon • Registries • Clients
@xcoulon#Devoxx #Docker #Eclipse Docker Images • "build" components • read-only templates • combination of layers
@xcoulon#Devoxx #Docker #Eclipse Docker Containers • "run" components • based on Images • contain application and dependencies but share same kernel • can be started, stopped, paused, deleted • containers are immutable and disposable
@xcoulon#Devoxx #Docker #Eclipse Docker Daemon • runs natively on Linux • inside aVM on Windows and Mac OS X
@xcoulon#Devoxx #Docker #Eclipse Docker Clients • clients (CLI, IDE) run on hostVM
@xcoulon#Devoxx #Docker #Eclipse Docker Registries • "distribution" components • public instances (https://hub.docker.com) • private instances
@xcoulon#Devoxx #Docker #Eclipse Benefits of Docker • No need for an hypervisor for each container • many containers perVM • less memory/CPU resources • Density, infrastructure utilization
@xcoulon#Devoxx #Docker #Eclipse Benefits of Docker • Package the full stack in a container: • OS, • JVM, • App server • Application with its configuration • Portable across environments • Developer machine • CI / Staging / Production environments • No more "but it works on my machine" argument
@xcoulon#Devoxx #Docker #Eclipse Docker at eclipse.org • Linux tools project (works on Mac OS X and Windows, too) • Make Docker accessible from Eclipse • Works with existing Docker tools (docker-machine, etc.) • Focus on developer experience • Allow reuse by other plugins
@xcoulon#Devoxx #Docker #Eclipse Docker setup • Install Docker Toolbox from docker.com • Install Eclipse Docker tooling • from eclipse.org/linuxtools • from tools.jboss.org (mirrors eclipse.org/linuxtools)
Demo @xcoulon#Devoxx #Docker #Eclipse
@xcoulon#Devoxx #Docker #Eclipse LiveReload basics Browser with LiveReload extension LiveReload Server Disk File WebSocket Monitoring HTTP
@xcoulon#Devoxx #Docker #Eclipse LiveReload in DevStudio Browser (with LiveReload extension) LiveReload Server App Server HTTP WebSocket Publishing DevStudio Docker Container Volume
Conclusion @xcoulon#Devoxx #Docker #Eclipse
@xcoulon#Devoxx #Docker #Eclipse Summary of highlighted features • Manage connection to Docker daemons • Search and pull images • Build custom images from Dockerfile • Run images with ports, volumes and links • Manage containers (start/stop/pause/unpause/kill) • Use a server adapter and LiveReload to publish an application • Remote debug in a container
@xcoulon#Devoxx #Docker #Eclipse Let's Get in Touch ! • http://tools.jboss.org • @jbosstools • #jbosstools • jbosstools-dev@lists.jboss.org • linuxtools-dev@eclipse.org
@xcoulon#Devoxx #Docker #Eclipse Questions & Answers
@xcoulon#Devoxx #Docker #Eclipse Thanks ! Feedback appreciated

Docker Tooling for Java EE Developers