Docker gives PODA or Package Once Deploy Anywhere. It simplifies software delivery by making it easy to build and share images that contain your application code and infrastructure together, managed as one component. Each Docker container is a self-contained microservice that provides isolation, resilience, decoupling, and other benefits. This talk will provide a quick introduction to Docker. It shows how to package an existing Java EE monolith in a Docker image. The application will then be refactored into multiple microservices and assembled together using orchestration. Testing of such applications will be discussed and shown. Design patterns and anti-patterns to create cluster of such applications will be demonstrated and discussed.