docs/get-started/index.md

3.6 KiB

title keywords description redirect_from
Overview of the get started guide docker basics, how to start a docker container, container settings, setup docker, how to setup docker, setting up docker, docker container guide, how to get started with docker Get started with the Docker basics in this comprehensive overview, You'll learn about containers, images, and how to containerize your first application.
/engine/getstarted-voting-app/
/engine/getstarted-voting-app/cleanup/
/engine/getstarted-voting-app/create-swarm/
/engine/getstarted-voting-app/customize-app/
/engine/getstarted-voting-app/deploy-app/
/engine/getstarted-voting-app/node-setup/
/engine/getstarted-voting-app/test-drive/
/engine/getstarted/
/engine/getstarted/last_page/
/engine/getstarted/step_five/
/engine/getstarted/step_four/
/engine/getstarted/step_one/
/engine/getstarted/step_six/
/engine/getstarted/step_three/
/engine/getstarted/step_two/
/engine/quickstart/
/engine/tutorials/
/engine/tutorials/dockerimages/
/engine/tutorials/dockerizing/
/engine/tutorials/usingdocker/
/engine/userguide/containers/dockerimages/
/engine/userguide/dockerimages/
/engine/userguide/intro/
/get-started/part1/
/get-started/part5/
/get-started/part6/
/getstarted/
/getting-started/
/learn/
/linux/last_page/
/linux/started/
/linux/step_four/
/linux/step_one/
/linux/step_six/
/linux/step_three/
/linux/step_two/
/mac/last_page/
/mac/started/
/mac/step_four/
/mac/step_one/
/mac/step_six/
/mac/step_three/
/mac/step_two/
/userguide/dockerimages/
/userguide/dockerrepos/
/windows/last_page/
/windows/started/
/windows/step_four/
/windows/step_one/
/windows/step_six/
/windows/step_three/
/windows/step_two/

This guide contains step-by-step instructions on how to get started with Docker. This guide shows you how to:

  • Build and run an image as a container.
  • Share images using Docker Hub.
  • Deploy Docker applications using multiple containers with a database.
  • Run applications using Docker Compose.

What is a container?

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:

  • Is a runnable instance of an image. You can create, start, stop, move, or delete a container using the Docker API or CLI.
  • Can be run on local machines, virtual machines, or deployed to the cloud.
  • Is portable (and can be run on any OS).
  • Is isolated from other containers and runs its own software, binaries, configurations, etc.

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.

What is an image?

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.

Next steps

In this section, you learned about containers and images.

Next, you'll containerize a simple application and get hands-on with the concepts.

Containerize an application{: .button .primary-btn}