Canonical Publisher Verified account

Install latest/stable of juju

Ubuntu 16.04 or later?

Make sure snap support is enabled in your Desktop store.

Install using the command line

Don't have snapd? Get set up for snaps.

Channel Version Published

Simple, secure and stable devops. Juju keeps complexity low and productivity high. Manage applications wherever they are run.

Juju allows you to retain a high-level understanding of all the parts of your system without being bogged down needing to know every hostname, every machine, every subnet and every specification of every storage volume.

Focus on your applications and their relations. Create a development environment on your laptop, then recreate that environment on the public cloud, onto bare metal servers or into a Kubernetes cluster.

Maximise your productivity by encapsulating specialist knowledge into Juju charms. They create repeatable, systematic and secure devops practices for all stages of your product’s lifecycle. Juju simplifies deployment, maintenance, scaling up and winding down.

## More detail

Juju is an open source modelling tool for operating software in the cloud. Juju allows you to deploy, configure, manage, maintain, and scale cloud applications quickly and efficiently on public clouds, as well as on physical servers, OpenStack, and in containers. You can use Juju from the command line or through its GUI.

In modern environments, applications are rarely deployed in isolation. Even simple applications may require several other applications in order to function - like a database and a web server, for example. For modeling a more complex system, e.g. OpenStack, many more applications need to be installed, configured and connected to each other. Juju's application modelling provides tools to express the intent of how to deploy such applications and to subsequently scale and manage them.

At the lowest level, traditional configuration management tools like Chef and Puppet, or even general scripting languages such as Python or bash, automate the configuration of machines to a particular specification. With Juju, you create a model of the relationships between applications that make up your solution and you have a mapping of the parts of that model to machines. Juju then applies the necessary configuration management scripts to each machine in the model.

Application-specific knowledge such as dependencies, scale-out practices, operational events like backups and updates, and integration options with other pieces of software are encapsulated in Juju's 'charms'. This knowledge can then be shared between team members, reused everywhere from laptops to virtual machines and cloud, and shared with other organizations.

The charm defines everything you all collaboratively know about deploying that particular application brilliantly. All you have to do is use any available charm (or write your own), and the corresponding application will be deployed in seconds, on any cloud or server or virtual machine.

## Learn More

Developer website

Contact Canonical

Details for juju

Last updated
17 September 2020

Share this snap

Generate an embeddable card to be shared on external websites.

Related blog posts

Where people are using juju

Install juju on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the installing snapd documentation.

Is there a problem with juju? Report this app