See also: How to manage applications
In Juju, an application is an instance of a charm.
Applications do not necessarily correspond to a software package running on a machine, but what the charm defines. For example, an application is usually understood as something that’s installable, such as a database. However, in Juju it means much more. In Juju, an application is scale-independent, active, and responsive. Moreover, it can actually consist of a whole stack of applications, currently known as bundles.
An application is always hosted within a model and consists of one or more units.
Interaction between applications is handled by integrations (before Juju
Before Juju 2.0, applications were known as services.