Beginning Docker

A hands-on video course packed with practical examples to get you started with Docker and create dazzling applications
3.1 (11 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
202 students enrolled
$19
$75
75% off
Take This Course
  • Lectures 29
  • Length 2 hours
  • Skill Level Beginner Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 12/2015 English

Course Description

One of the major challenges while creating an application is adapting your application to run smoothly on all of the plethora of operating systems available. Docker is an extremely efficient technology that allows you to wrap all your code along with its supporting files into a single bundle; it also guarantees that your application will behave in the same way on any host powered by Docker. You can also easily reuse existing Docker containers or create and publish your own. Unlike Virtual Machines, Docker containers are lightweight and more efficient.

Beginning Docker starts with the fundamentals of Docker—explaining how it works, how to set it up, and how to get started on leveraging the benefits of this technology. The course goes on to cover more advanced features and shows you how to create and share your own Docker images.

You will learn how to install Docker on your own machine, then how to manage it effectively, and then progress to creating and publishing your very own application. You will then learn a bit more about Docker Containers; built-in features and commands such as volumes, mounts, ports, and linking and constraining containers; before diving into running a web application.

Docker has functionality such as the Docker web API to handle complex automation processes which will be explained in detail. You will also learn how to use the Docker Hub to fetch and share containers, before running through the creation of your own Docker powered mini-Heroku

Beginning Docker covers everything required to get you up and running with Docker, with detailed real-world examples and helpful tips to make sure you get the most from it.

About The Authors

Donald Simpson is an Information Technology Consultant with over 15 years of experience in programming, Build Management, and process automation. He has worked with a wide variety of multinational companies to develop bespoke automated solutions using Docker and Virtualisation technologies.

Jeff Lindsay is an independent, design-minded technologist who has been writing and designing software professionally for over 15 years. He has worked with Twilio, DotCloud/Docker, Transcriptic, Piston Cloud, CommerceNet, NASA Ames, and others to build prototypes, products, and platforms.

He also has a large open source portfolio, lots of speaking experience, and a history of starting communities and cultural institutions. These include SuperHappyDevHouse and Hacker Dojo.

His Specialities include systems thinking, experience design, platforms, tools, prototyping, python, ruby, distributed systems, messaging, information architecture, usability, domain modeling, systems infrastructure, API integrations and design, web development, and cloud stuff.

What are the requirements?

  • It assumes basic knowledge of Linux but supplies everything you need to know to get your own Docker environment up and running.

What am I going to get from this course?

  • Build new Docker containers and find and manage existing ones
  • Use the Docker Index, and create your own private one by using containers
  • Discover ways to automate Docker, and harness the power of containers!
  • Build your own Docker powered mini-Heroku Paas with Dokku
  • Set up Docker on your environment based on your application’s custom requirements
  • Master Docker patterns and enhancements using the Ambassador and Minimal containers

What is the target audience?

  • If you’re a developer who wants to learn about Docker, a powerful tool to manage your applications effectively on various platforms, this course is perfect for you!

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Introduction
02:54

This video will offer an overview of the course.

03:31

See how to get your own Docker running using a local virtual machine that is controlled by Vagrant.

04:43

Learn the difference between Docker containers and traditional virtual machines.

04:07

Get a high-level overview of the objects Docker works with and how they are used.

Section 2: Docker Basics
06:07

We have Docker and want to run a command in an isolated container, so we use "docker run" to work with commands in containers.

05:21

You want to manage containers once you've started creating them. You can list, inspect, view log, stop, and delete them with basic Docker commands.

04:35

We want to make an image that has a package (sshd) already installed and configured. So, we'll use Docker commands to make a new image from an existing image.

03:19

Once you've made a container you like, you would want to share it with others or make it easy for you to install on other machines. So, you have to push the container image to the Docker index.

03:41

Making containers for everything we want to use in containers is difficult, so we can use ready-made containers. Find and use container images using the Docker index and the Docker ecosystem.

Section 3: Building Containers
03:37

We want to quickly and consistently produce and reproduce a container image, so we use a Dockerfile to define a container.

02:42

We are making an image that uses a versioned configuration file, so we can add it to the container in the build process.

04:23

We want to simplify the running process of our container, so we add metadata and defaults to the Dockerfile.

02:26

You have a container that you want to use but with some variations, so you will build a new container based on the existing image.

03:21

We want others to trust our image in the Docker index, so we will set up trusted builds to automatically build from our GitHub repository.

Section 4: More Docker Features
04:23

Using the Docker run command to improve performance, and exploring some of the features it provides us when running containerized commands.

03:16

Discover how to use docker run to override some of the defaults that come with containers, which are usually specified from their Dockerfiles.

03:40

Learn about Docker volumes and mounts and how we can use docker run to configure them for our containers.

04:05

Learn about ports and networking with Docker and Docker Containers.

03:13

Similar to how we can"share" data volumes across containers, we can also "share" ports across containers so that they can communicate with each other.

Section 5: Running a Web Application with Docker
03:02

Although Docker is great for running backing services and infrastructure, its real value comes from shipping your application. Unlike the supporting infrastructure, your application will be updated and shipped quite frequently. Docker can make this process much easier. In order to demonstrate this, we’re going to build a simple web application to deploy with Docker.

02:25

Previously, we made a simple "Hello World" web application that uses Redis to increment a counter with every request. Now, we’re going to take this application and "Dockerize" it.

02:59

Work through the process that is required to set up an application server to act as our production server to deploy on.

03:56

Demonstrate how to effectively ship a container to another machine.

05:12

We show how we can streamline the process and create an easy deployment workflow.

Section 6: Basic Docker Automation
06:57

We will explore the idea of automation in Docker.

02:46

Demonstrate how we can expose control of containers to other containers.

05:17

Explain the limitations of the in-built logging functionality.

04:53

Building our own Docker-powered mini-Heroku platform-as-a-service using Dokku.

04:07

Explore Docker pattern called ambassador.

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Packt Publishing, Tech Knowledge in Motion

Over the past ten years Packt Publishing has developed an extensive catalogue of over 2000 books, e-books and video courses aimed at keeping IT professionals ahead of the technology curve. From new takes on established technologies through to the latest guides on emerging platforms, topics and trends – Packt's focus has always been on giving our customers the working knowledge they need to get the job done. Our Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.

Ready to start learning?
Take This Course