
The most common way to run a container is by using the Docker CLI.
But what exactly does docker run nginx
do?
Does it simply start another process on the host,
or does it spin up a full-blown virtual machine?
What kind of execution environment does the containerized application get?
Does it have an isolated filesystem?
Can it see other processes on the host?
Does it have its own private network stack?
In this skill path, you'll run the same container image across different container runtimes: Docker, Podman, nerdctl, ctr, and even the low-level runc. After starting the container, you'll explore it to understand what exactly constitutes a container and how the containerized application "sees" its execution environment.
Along the way, you'll also have the opportunity to compare the user experience (UX) of different container runtimes and examine the differences and similarities in how they implement core container concepts.
Let's get started!

Running Containers with Docker
To establish a baseline, run a container using the (de facto standard) Docker CLI and inspect it.
🧙♂️ You shall not pass!
This skill path is only available at the premium tier. Please upgrade your account to unlock all learning materials, get unlimited daily usage, and access to more powerful playgrounds. Help us keep this platform alive and growing!
Level up your Server Side game — Join 14,000 engineers who receive insightful learning materials straight to their inbox