Images are declared with image directive: image: <image name>
.
The image directive starts a description for building an application image.
The image name is a string, similar to the image name in Docker:
image: frontend
If image only one in the config, it can be nameless:
image: ~
In the config with multiple, all images must have names:
image: frontend
...
---
image: backend
...
An image can have several names, set as a list in YAML syntax (this usage is equal to describing similar images with different names):
image: [main-front,main-back]
You can use image name for most commands to execute ones for specific image(s):
- werf build [IMAGE_NAME…] [options]
- werf publish [IMAGE_NAME…] [options]
- werf build-and-publish [IMAGE_NAME…] [options]
- werf run [options] [IMAGE_NAME] [– COMMAND ARG…]
Also, image name is used for naming when publishing built image into registry (read about it in separate article).