Ray is a Developer Advocate for the Google Cloud Platform. Ray had extensive hands on cross-industry enterprise systems integration delivery and management experiences during his time at Accenture, managed full stack application development, DevOps, and ITOps. Ray specialized in middleware, big data, and PaaS products during his time at Red Hat while contributing to open source projects, such as Infinispan. Aside from technology, Ray enjoys traveling and adventures.

Follow Ray on Twitter @saturnism (

Hands-on with Docker, Kubernetes and OpenShift - from basic to advanced features

In this hands-on session, bring your laptop. You will learn about Docker container, and then building a container image that runs Java microservices from scratch. We can then deploy Java microservices at scale via the container orchestration Kubernetes and finally leverage OpenShift for features such as continuous integration and delivery (CI/CD). At the end of the lab, you would be able to use container and container orchestration technology both on the cloud and on your local laptop as well.

Docker tips and tricks for Java Developers

It’s been only a short 2 years - and it seems like just about everyone may know how to build a Docker container now. However, the newly built container image may not be the most optimal or secure. To build the ultimate container image takes many best practices, for example:
- Don’t use a root user
- Repeatable builds takes discipline to pin versions
- Your immutable image isn’t as immutable when it’s running!
- Certain actions may double your container size!
- Fat Jars may not be container image friendly
- The differences between the popular Maven Docker plugins
- How to tag your images with the plugin and store metadata in the container itself
- Why did your disk run out of space?

Join this session to learn how to best address these issues when building your Java container images.