Minimal Ubuntu

What is Minimal Ubuntu?

Minimal Ubuntu is a set of Ubuntu images designed for automated deployment at scale and made available across a range of cloud substrates. They use the optimised kernels and optimised boot process on their target compute substrate. These images have a greatly reduced default package set, without many convenience tools for interactive usage. They are much smaller, boot faster, and will require fewer security updates over time since they have fewer packages installed.

Minimal instances are not intended to be comfortable to use at the command line, but you can apt-get and snap install anything as usual, so on the occasions when humans do need to use them for debugging purposes, they can be made comfortable. The 'unminimize' command will install the standard Ubuntu Server packages if you want to convert a Minimal instance to a standard Server environment for interactive use.

Since they retain full support for installing from the Ubuntu archive, Minimal Ubuntu has access to the same breadth of software, and the same excellent security maintenance, as the regular server images. Combined with full snap support, anything you can do with the regular Ubuntu images, you can do with the minimal images.

Enterprise support is available in the form of Canonical's Ubuntu Advantage on the same terms as regular Ubuntu cloud images.

Where can I find Minimal Ubuntu?


On private clouds, Minimal Ubuntu is available for download, optimised for use with KVM and LXD, on Bionic and Xenial.

Amazon Web Services

Available on AWS, in all regions.

For example, a view of images in us-west-2 (change the region in your console to search other regions):;name=ubuntu-minimal/images/hvm-ssd/ubuntu-;ownerAlias=099720109477;sort=desc:name

Command-line list of latest AMI ID per region for a particular release (Xenial in this example):

   1 sstream-query \
   2 \
   3   release=xenial \
   4   -o '%(region)s, %(id)s'

An example of using the AWS CLI to find the latest AMIs for a release in a region with machine consumable output:

   1 aws --output table ec2 describe-images --output json --owner 099720109477 \
   2   --region us-west-2 \
   3   --filters "Name=name,Values=ubuntu-minimal/images/hvm-ssd/ubuntu-xenial*" \
   4   --query 'sort_by(Images, &CreationDate)[-1].{Name: Name, ImageId: ImageId, CreationDate: CreationDate}'

This provides a list of Xenial release images. Change the release name in the --filter option to find other releases (e.g. substitute 'bionic' for 'xenial').

Google Compute Engine

Available on GCE:

   1 gcloud compute images list \
   2   --project ubuntu-os-cloud \
   3   --filter="family~ubuntu-minimal"

This provides a list of release images.

Oracle Cloud Infrastructure

Available on OCI:

To find the latest xenial image from the command line:

   1 oci compute image list \
   2   --compartment-id <your compartment OCID> \
   3   --query 'data[?contains("display-name",`Ubuntu-16.04-Minimal`)]|[0:1].["display-name",id]'

To find the latest bionic image from the command line:

   1 oci compute image list \
   2   --compartment-id <your compartment OCID> \
   3   --query 'data[?contains("display-name",`Ubuntu-18.04-Minimal`)]|[0:1].["display-name",id]'

Launching Ubuntu Minimal


When launching the download image from KVM, you will need to specify the virtio network driver.


First add the new Ubuntu Minimal images simplestreams endpoint:

   1 lxc remote add --protocol simplestreams ubuntu-minimal


Launch the Xenial minimal image:

   1 lxc launch ubuntu-minimal:xenial


Launch the Bionic minimal image:

   1 lxc launch ubuntu-minimal:bionic

Additional Info

Minimal (last edited 2022-07-27 16:39:58 by ikapelyukhin)