Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Docker: A Beginner's Guide From Container To Swarm
Rating: 4.3 out of 5(402 ratings)
2,454 students

Docker: A Beginner's Guide From Container To Swarm

Learn how images and containers can save time, resources and effort in migrating applications to different platforms
Created byRaphael Asghar
Last updated 9/2019
English
English [Auto],

What you'll learn

  • This course is designed with the understanding that the student is an absolute beginner in docker. After taking this course, the student will have a solid understanding and foundation of how to create containers and images – the cornerstone of docker technology. The student will learn concepts of creating images from scratch, building and deploying containers, deploying application to cross platforms such as Windows, Linux and Mac OS and appreciate the speed and simplicity of docker in creating, testing, migrating application such as Nginx, MySQL, Oracle, Redis, Jenkins and much more. At the end of this course, the student will marvel at how docker technology is able to save time, resources, and effort in sharing applications and code with other IT professionals in any platform.

Course content

1 section50 lectures8h 53m total length
  • WELCOME TO DOCKER2:50

    Discover how Docker containers let developers write code once and run it across Linux, Windows, or Mac, with container migration keeping projects portable when Docker is installed.

  • DOCKER HOW WE GOT HERE BRIEF HISTORY5:54

    Trace the shift from room-sized servers to virtualization, cloud, and Docker, highlighting how containers reduce resources and support applications across Linux, Mac, and Windows.

  • ADVANTAGES OF DOCKER SMALLER FOOTPRINT OF APPS8:40

    Docker delivers a smaller size, faster downloads, and portable apps through containers with isolated execution. It enables cross-platform deployment on Linux, Mac, and Windows and supports scalable, secure app management.

  • CREATING A DOCKER ACCOUNT2:35

    Create a Docker account, verify your email, and sign in to Docker Hub. Explore images, learn about Docker Enterprise Edition and Docker Community Edition, and understand repositories.

  • WHAT IS DOCKER7:14

    Discover how Docker, an open platform for developing, shipping, and running applications, packages code into images and runs them as lightweight containers for cross-environment deployment.

  • DOCKER ARCHITECTURE7:59

    Explore how Docker architecture leverages the host OS and Docker Engine to run lightweight containers, avoiding hypervisors and heavy VMs for faster, resource-efficient development.

  • REQUIREMENTS FOR DOCKER5:43

    Explore Docker installation requirements across Windows, Mac, and Linux, including edition constraints and Docker Toolbox versus Docker for Windows, with cross-platform steps.

  • INSTALLING DOCKER FOR WINDOWS12:00

    Discover how to install Docker on Windows, enable containers, and run Docker images and containers using the Docker client and hello world test, with Linux virtual machine backing.

  • INSTALLING DOCKER ON MAC8:01

    Install docker desktop for Mac by downloading the stable version, copying it to applications, and launching it. Verify the setup by running docker version, docker info, and docker run hello-world.

  • DOCKER CC OR EE STABLE OR EDGE6:54

    Explore docker community edition ce and enterprise edition ee, and learn stable versus edge channels on linux, where images and containers form the core of the platform.

  • INSTALLING VIRTUAL BOX AND APPS13:19

    Set up a virtual machine with VirtualBox, install Ubuntu Server, and prepare Docker by booting Linux so you can run Docker in the course.

  • INSTALLING THE DESKTOP UBUNTU10:14

    discover how to install Ubuntu desktop in a virtual box, configure gui access, and prepare Docker work with both desktop and server environments, including remote management with PuTTY.

  • INSTALL PUTTY7:21

    Install and configure PuTTY to remotely connect to Docker servers, set up bridging network for virtual machines, and manage multiple server sessions from a single interface.

  • INSTALL DOCKER ON UBUNTU10:58

    Learn to install Docker on Ubuntu with a convenient script, configure a non-root user, and verify the setup using the hello-world container and Docker Hub images.

  • WHAT IS A CONTAINER7:11

    Define a container as a lightweight, isolated unit built from a Docker image, with a writable layer turning the image into a container and enabling portable, reusable images across platforms.

  • DOCKER COMMANDS16:24

    Learn how to download Docker images from Docker Hub and manage containers using core Docker commands, including pulling images and listing and removing containers and images.

  • CREATING CONTAINER FROM IMAGES14:07

    Learn how to create containers from images with docker run, manage running or exited containers, and remove containers and images with docker rm and docker rmi; images persist after removal.

  • CREATING MULTIPLE CONTAINERS FROM SINGLE IMAGE8:38

    Discover how to create multiple containers from a single Docker image using docker run, assign unique names to each engine x (nginx) container, and manage images and containers.

  • VIEWING NGINX WEB SERVER5:31

    Publish the Engine X image as a container, expose port 80, and then access localhost to view and test the Engine X web server and plan updates.

  • UPDATING NGINX WEBSERVER WITH OUR CODE11:59

    Learn to customize the Engine X web server inside a Docker container by stopping and removing the container, then re-running with a mounted directory to update the HTML page.

  • PORTS AND IP ADDRESS AND MORE COMMANDS12:32

    Map container ports to the docker host with the -p flag to access apps, noting host:container bindings set during container creation. Use docker inspect to view port bindings and ip.

  • INTERACTIVE WITH CONTAINERS17:24

    Interact with containers by running them in interactive mode and using Docker exec to explore inside. Distinguish containers from images, remove containers with rm, and note data persists after stop.

  • INTERACTING WITH A DATABASE INSIDE A CONTAINER15:04

    Learn to run a MySQL database inside a Docker container, including pulling the official image, configuring environment variables, starting the container, accessing the MySQL prompt, and listing databases.

  • WHAT IS AN IMAGE4:27

    Discover how a docker image is a layered, read-only collection built from a dockerfile and a base image, used to form containers, and pushed to the docker hub registry.

  • CREATING IMAGE LAYER5:32

    Learn how Docker images are built from layered file systems, view each layer with Docker history, and inspect metadata with Docker inspect to understand layer creation and modifications.

  • CREATING AN IMAGE16:37

    Learn to build a Docker image from scratch using a Dockerfile with a base image and run commands, then create and run a container example with Audacity.

  • CREATE AN IMAGE AND RUN A CONTAINER6:40

    Learn to create a Dockerfile with maintainer and CMD, build an image, and run a container to execute a welcome message using docker build and docker run.

  • PUSHING IMAGES TO REPOSITORY10:32

    Learn how to push a modified Docker image to your Docker Hub repository by creating a repository, committing container changes, and choosing private or public visibility.

  • WHAT ARE VOLUMES8:49

    discover how docker volumes preserve persistent data outside the container and on the host system by mapping containers to external volumes and sharing volumes across multiple containers.

  • DEPLOYING VOLUMES17:51

    Learn how docker volumes persist data outside containers by mapping a named volume with docker run, enabling multiple containers, including Jenkins, to share data while remaining independent.

  • BIND MOUNT VOLUMES9:06

    Explore bind mount volumes by mapping a host directory to a container using an absolute path, enabling administrator-managed access to persistent data for a Jenkins container.

  • INSTALLING VISUAL STUDIO CODE5:16

    Install Visual Studio Code on Linux to write YAML for Dr. Kapos files and manage containers, while noting YAML indentation and code editing in Visual Studio Code.

  • WHAT IS DOCKER COMPOSE FILE7:48

    Discover how Docker Compose uses a YAML file to define multiple containers and their services, enabling a single command to create and start all applications.

  • DOCKER COMPOSE MYSQL AND WORDPRESS15:18

    Learn to build a docker compose yaml file for multiple services, including engine X and a database, with proper indentation, then start, stop, and verify containers using docker compose commands.

  • DOCKER COMPSE FILE WITH MYSQL AND WORDPRESS19:42
  • SWARM SETUP9:22

    Learn how docker swarm forms a cluster of manager and worker nodes to provide redundancy, load balancing, and scalable rolling updates for production environments.

  • SETTING UP DIGITAL OCEAN DOCKER SWARM REQUIREMENTS13:36

    Set up docker swarm using three droplets on digital ocean, promoting one as manager and two as workers, then install docker and prepare for swarm initialization.

  • INSTALLING SSH TOOL7:13

    Learn to set up and use an SSH client to manage three Docker nodes, log in securely, switch between sessions, and prepare for swarm initialization.

  • INSTALLING DOCKER6:11

    Set up three Digital Ocean droplets, connect remotely, and update and upgrade the servers. Install Docker, verify the version (19), and prepare to initialize the swarm.

  • INSTALLING DOCKER SWARM REQUIREMENTS ON DIGITAL OCEAN VMS18:49
  • CREATING SERVICES IN DOCKER SWARM NGINX16:38

    Learn to create and manage Docker swarm services with replicas, using Docker service create, scale, and remove commands. Distribute nginx-based service across multiple nodes for redundancy and seamless updates.

  • DESTROY DROPLET4:49

    Turn off and then destroy droplets in digital ocean to avoid charges, recognizing destruction is irreversible and removes all data and backups, with the option to recreate later if needed.

  • PLAY WITH DOCKER12:18

    Explore docker basics with the play with docker browser playground, spin Alpine Linux VMs, practice docker commands, and build a swarm of managers and workers in seconds.

  • SETTING UP DOCKER MACHINE ON MAC14:28

    Install Docker Desktop for Mac, create two Docker machines as a manager and a worker using the VirtualBox driver, form a swarm, and deploy a four-replica Nginx service.

  • BASIC NETWORKING22:01

    Learn basic docker networking by creating and managing bridge networks, connecting and disconnecting containers, and isolating test environments to enable secure inter-container communication.

  • PUTTING IT TOGETHER WITH AN EXAMPLE OF DO AND DOCKERFILE AND NGINX25:39

    Deploy a hit-counter python app on a three-node swarm using docker stack and a registry, with four files: app.py, requirements, Dockerfile, and docker-compose.yaml.

  • VISUAL PORTAINER8:36

    Explore Portainer, a graphical tool that lets you manage Docker objects such as containers, images, volumes, networks, and swarms via a browser GUI.

  • DESTROY DROPLETS1:37

    Destroy droplets, nodes, and snapshots to avoid ongoing hourly charges from Digital Ocean; verify there are no backups and keep the account empty for the next usage.

  • INSTALL SQL SERVER 2017 IN SECONDS20:10

    Install SQL Server 2017 in Docker on an Ubuntu VM, configure memory, use SSMS, run containers on port 1433, and quickly create databases to compare with virtual machines.

  • WRAPPING IT UP5:31

    Build confidence in Docker fundamentals by mastering images, containers, volumes, registries, yaml files, networks, and swarm stacks, while exploring cross-platform testing and cloud options.

Requirements

  • The requirements for this course are the course called ‘A beginner’s Guide To Linux Commands’ or an understating of Linux commands. A laptop with Windows 10. Basic System Administrator Skills.

Description

The course is designed with the absolute beginner in mind. 

At the end of this course, the student will have the following skills and knowledge in:

Why docker is revolutionizing the IT industry

Building containers from images

Creating, pulling and pushing images to docker hub repository

Understand how containers provide the developer with saving time and resources

Write Docker file from scratch and create custom images

Get an introduction on how to save data to volumes

Build a simple network

Create multiple nodes for swarm for high availability solutions




Who this course is for:

  • The course is designed for anyone who want to learn docker technology. This includes, developers, sysadmins, operators, dbs, and anyone in the IT field that manages information