ContainerApp is a first-class interface that represents an application. The ContainerApp API underlies all CLI and UI interactions with applications. It allows for a separation of concerns, providing a simple way for users most familiar with their application’s needs (typically Developers) to set build and runtime defaults in the ContainerApp (at rest) interface, while users responsible for managing applications at scale (typically Application Operators) are able to interact with the ContainerApp (live) API to view and modify their running application.
The ContainerApp at rest interface gives developers a simple way to set build and runtime defaults for their application using the Tanzu CLI.
The following build defaults can be set:
These values are passed to tanzu build
as inputs. Then, tanzu build
outputs a built application artifact along with a ContainerApp decorated with build information. You can expect to see the following build metadata in your ContainerApp after it has been built:
For more information on setting build defaults, see defining build defaults
The following runtime defaults can be set:
These values are used as the default runtime configuration when the ContainerApp is deployed to a Space.
Additionally, developers can include metadata about their application so that Operators have additional context about the app and know how to contact the appropriate team responsible for maintaining the application’s source code. The following metadata can be added:
For more information on setting runtime defaults and app metadata, see defining app defaults
Once a ContainerApp has been deployed to a Space, Operators can interact with their running applications via the ContainerApp API. This gives Operators a simple way to view ContainerApps running in a Space and allows them to modify runtime configuration on an environment-by-environment basis.
For reference information for ContainerApp, see ContainerApp API reference.