Image : package has everything needed to run an application, includes
Container : runtime instance of an image, inside a machine running docker or a Node in a swarm
Service : above Container, define how containers behave in a production
Swarm: a group of Nodes as a cluster
Stack : above Service, defines interaction of all services
Is built upon a stack of layers, each represents an instruction in the image's Dockerfile (each command adds a layer).
Each, unless the last one, is read only.
Dockerfile defines what goes into the container:
Build an Image
Push image onto registry (see Registry)