init containers can be used for running tools or commands or any other action that needs to be done before the actual pod is started. For example, loading a database schema, or constructing a config file from a definition passed in via ConfigMap
or Secret
.
See Using init containers to perform tasks before a pod is deployed for more information.