Containers have been around in Linux for years. The containers have all the files they need to run those processes independent of the system, which is why they have become a commonly used tool for deployments.
That means you can create a Docker container that has all of the dependencies you need to run your app and manage it all the way up to production.
With Docker, you can develop locally in a container that you can share with other developers and use that same container to deploy to production once a consensus on changes is reached.
The — name flag lets you provide a name for your container that you can use in later commands.