content/get-started/workshop/_index.md
This 45-minute workshop contains step-by-step instructions on how to get started with Docker. This workshop shows you how to:
[!NOTE]
For a quick introduction to Docker and the benefits of containerizing your applications, see Getting started.
A container is a sandboxed process running on a host machine that is isolated from all other processes running on that host machine. That isolation leverages kernel namespaces and cgroups, features that have been in Linux for a long time. Docker makes these capabilities approachable and easy to use. To summarize, a container:
If you're familiar with chroot, then think of a container as an extended version of chroot. The filesystem comes from the image. However, a container adds additional isolation not available when using chroot.
A running container uses an isolated filesystem. This isolated filesystem is provided by an image, and the image must contain everything needed to run an application - all dependencies, configurations, scripts, binaries, etc. The image also contains other configurations for the container, such as environment variables, a default command to run, and other metadata.
In this section, you learned about containers and images.
Next, you'll containerize a simple application and get hands-on with the concepts.
{{< button text="Containerize an application" url="02_our_app.md" >}}