I've searched online and most links seem to mention manifests without actually explaining what they are. What are Manifests?
-
10Manifest is a file (JSON or YAML), containing a description of all the components you want to deploy. Refer the official doc : https://kubernetes.io/docs/concepts/workloads/controllers/deployment/ – Sundararaj Govindasamy Mar 12 '19 at 21:29
2 Answers
It's basically a Kubernetes "API object description". A config file can include one or more of these. (i.e. Deployment, ConfigMap, Secret, DaemonSet, etc)
As per this:
Specification of a Kubernetes API object in JSON or YAML format.
A manifest specifies the desired state of an object that Kubernetes will maintain when you apply the manifest. Each configuration file can contain multiple manifests.
And a previous version of the documentation:
Configuration files - Written in YAML or JSON, these files describe the desired state of your application in terms of Kubernetes API objects. A file can include one or more API object descriptions (manifests).

- 58,485
- 12
- 111
- 141
-
-
Updated thanks for pointing out. I can't find what was described initially so I pointed to an updated part of the docs. Docs are in constant flux :-) – Rico Feb 02 '20 at 16:55
When you are going to deploy to kubernetes , or create a kubernetes resources like a pod , replica-set , configmap , secret , deployment , etc , you need to write a file called manifest that describe that object and its attributes either in yaml or json.
Just like you do in:
puppet manifest
ansible playbook
chef recipe
etc
Ofcourse you can create those objects by using just command line , but the recommended way is to write a file so that you can version control it and use it in a repeatable way.

- 11,198
- 9
- 53
- 73