A Docker image is a file composing one or more instructions which, together with the involved programs and libraries, build up a layered storage format. Images are the foundation for creating and executing instances of previously described compositions. Those instances are commonly referred as containers.
Example of a minimal Docker image file description (often named as Dockerfile):
FROM alpine:latest RUN echo "Executed at build time" CMD echo "Executed at runtime: $(date)"
The image above defines Alpine Linux as the base image, outputs a message during the image build process and another one containing the current time and date whenever a new container based on that image is instantiated.
Jobs are able to execute arbitrary, previously built, images. Setting the
image in the configuration file allows for custom images. They can also run Job Services which are containers executed during the build process and linked to the main job container. Services can listed by setting the
services keyword in the configuration file.
For more information about Docker, please refer to the official Docker documentation.