Dockerfile.One image, many containers: you can start ten containers from the same image, each an independent, isolated process, without rebuilding anything. Stopping a container doesn't delete it — its writable layer (and any data written into it) is still there until you explicitly remove it with docker rm. This is a common point of confusion: docker stop just sends a termination signal to the process and leaves everything else in place; the container still exists, still shows up in docker ps -a, and can be restarted with docker start.
docker run --name web1 -d myapp # container 1, from the myapp image
docker run --name web2 -d myapp # container 2, same image, fully independent
docker stop web1 # web1's process stops; its filesystem still exists
docker start web1 # picks right back up — same writable layer as before
docker rm web1 # NOW web1 and its writable layer are actually gone