What you'll learn:
- How you can run Docker Containers
- How you can create and run your own Docker Images
- Publish Docker Images to Docker Hub
- Learn how to use Docker Compose to Run Multiple Docker Containers
- Use Docker Swarm for Cloud Scale Computing
- Use Maven to Create Docker Images
- How to use Docker Containers for Integration Tests
- Run multiple Docker containers with Docker Compose
- How you can leverage Docker Containers for Integration tests from CI Builds
- Create Your Own Docker Swarm Cluster
If you're a Java developer, Docker is a true game changer for you!
Developing Java applications in large enterprises is no easy task. Every day you are asked to work with many different technologies. In the morning, you might need to save data to a MySQL database. In the afternoon, you might be working with RabbitMQ. Tomorrow you might be asked to work with Mongo or Redis.
Think about what you need to do when working with all these different technologies.
If you install all these on your laptop, it becomes cluttered and slow. Sure, you could use VMs to run these - if you really want to slow down your laptop. Virtual Machines are awesome, but VMs can also be huge resource hogs.
If you're on a dev team, you can set up dedicated development servers. But then you don't have a clean development environment. And your development work becomes dependent on access to the development servers.
Docker is an exciting technology you can leverage for enterprise development.
The popularity of Docker has been explosive. Much of the industry focus has been on DevOps. But more so on the Operations part.
Did you know Google creates roughly 285 MILLIONDocker containers per day?
Docker is clearly a popular technology for running cloud scale applications like GMail.
But as a Java developer, what does Docker mean to you?
Are you working with MySQL? There's a ready made Docker image for you.
Postgres? Mongo DB? Redis? Cassandra? RabbitMQ? ActiveMQ? Kafka?
Yep, there's Docker images you can download and use today.
You can use Docker for a lot more than just your local development.
Are you developing microservices? If you are not already deploying your microservices in Docker containers, chances are you soon will be.
Introduction to Docker
This course starts off assuming you have no knowledge about Docker.
You will learn why Docker is not like a Virtual Machine.
Right away, you will learn how to run a Docker container with a Docker Image pulled down from Docker hub.
As the course progresses, you will learn how to create your own Docker images and publish those images to Docker hub.
Java DevOps with Docker
Through the use of the Fabric8 Maven plugin, you will learn how to automate many Docker tasks, such as creating images for microservices.
Docker Compose is a powerful tool to run multiple Docker containers. You will learn how to run how to run an application consisting of a Spring Boot web application, RabbitMQ, a page view microservice, and a MySQL database. Through Docker Compose, with a single command, you will be able to start or stop this application on any Docker machine!
Using Docker Swarm Mode
You'll learn how Docker Swarm Mode does container orchestration. In this course, you will provision your own Docker Swarm Cluster in the cloud. You will deploy a containerized Java application into a Docker Swarm Cluster. You'll see what a powerful feature Docker Swarm's routing mesh is, and how you can dynamically scale your application.
Expert Interviews
This course includes interviews with leading industry experts!
James Labocki - Product Owner,Red Hat Cloud Infrastructure
More on the way!
Slack Group
Exclusive to this course is a Slack group you can join to interact with the instructor, teachers assistants, and other students learning Docker from around the world. Say hi. Get help with a problem, or help someone else. When you enroll in this course you can join a community of others learning Docker!
Spring Boot Cookbook!
Course includes a Spring Boot Cookbook giving you example Spring Boot projects you can use against popular open source technologies including:
Mongo DB
MySQL
Postgres
Maria DB
DB2 Express
Neo4J
Redis
Cassandra
ActiveMQ
RabbitMQ