Docker Up and Running
Learn to build, deploy, and run applications inside portable software containers
Development and deployment isn't easy - reduce the headaches with Docker
Docker is one of today's most in-demand technologies for local development and production deployment. This online course offers an introduction to Docker in the context of developing web applications. We'll demystify Docker by using it to run applications locally and on a server.
What is Docker?
Docker is an application that helps developers setup, share, and run other applications, like web apps, database servers, and more. Docker runs applications inside software containers, which provide a lightweight, isolated, and repeatable environment for running applications.
What are the benefits?
Using Docker means...
- Simple and fast: Docker provides the isolation and consistency commonly implemented with Virtual Machines (VMs), only without all the overhead.
- Increased productivity: Docker provides a wide range of tools to manage complex application stacks.
- Automation: Think about how much time is spent setting up installing dependencies, such as Python or Java. Or setting up configuration. Now think about how many steps are repeatable on different machines. With Docker, you can define all these within a container and automate the process of setting it all up.
What will you learn in this course?
This introductory course will get you up-and-running with Docker quickly. Much of the content will be specific to web development, but the skills can be applied to other areas as well, so don't fret! We'll cover:
- The concepts behind Docker
- Why Docker is beneficial to web developers
- How to manage Docker images and containers
- How to "Dockerize" an existing web application (we'll use NodeJS applications as examples)
- Running multiple containers with Docker Compose
- Using Docker for local development
- Deploy Docker on a variety of cloud providers, like Heroku, Now.sh, and Amazon EC2 Container Service (ECS)
Brian is a software engineer specializing in web development. He works at SAP Concur in Bellevue, WA, where he uses Docker, Node, React, and Redux to build features for the Concur Developer Center. Previously, he taught web development courses at General Assembly and provided course mentorship at Florida State University.
Brian's teaching philosophy revolves around hands-on learning with practical applications and giving you relevant information needed to ramp up quickly and efficiently in various languages, frameworks, and technologies.