= 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? == === Downloads === On private clouds, Minimal Ubuntu is available for download, optimised for use with KVM and LXD, on [[http://cloud-images.ubuntu.com/minimal/releases/bionic/release/|Bionic]] and [[http://cloud-images.ubuntu.com/minimal/releases/xenial/release/|Xenial]]. * xenial [[http://cloud-images.ubuntu.com/minimal/releases/xenial/release]] * bionic [[http://cloud-images.ubuntu.com/minimal/releases/bionic/release]] === 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): [[https://us-west-2.console.aws.amazon.com/ec2/v2/home?region=us-west-2#Images:visibility=public-images;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): {{{#!highlight bash sstream-query http://cloud-images.ubuntu.com/minimal/releases/ \ content_id=com.ubuntu.cloud:released:aws \ release=xenial \ -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: {{{#!highlight bash aws --output table ec2 describe-images --output json --owner 099720109477 \ --region us-west-2 \ --filters "Name=name,Values=ubuntu-minimal/images/hvm-ssd/ubuntu-xenial*" \ --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: {{{#!highlight bash gcloud compute images list \ --project ubuntu-os-cloud \ --filter="family~ubuntu-minimal" }}} This provides a list of release images. === Oracle Cloud Infrastructure === Available on OCI: * xenial [[https://docs.cloud.oracle.com/iaas/images/ubuntu-1604/]] * bionic [[https://docs.cloud.oracle.com/iaas/images/ubuntu-1804/]] To find the latest xenial image from the [[https://docs.cloud.oracle.com/iaas/tools/oci-cli/2.7.0/oci_cli_docs/|command line]]: {{{#!highlight bash oci compute image list \ --compartment-id \ --query 'data[?contains("display-name",`Ubuntu-16.04-Minimal`)]|[0:1].["display-name",id]' }}} To find the latest bionic image from the command line: {{{#!highlight bash oci compute image list \ --compartment-id \ --query 'data[?contains("display-name",`Ubuntu-18.04-Minimal`)]|[0:1].["display-name",id]' }}} == Launching Ubuntu Minimal == === KVM === When launching the download image from KVM, you will need to specify the virtio network driver. === LXD === First add the new Ubuntu Minimal images simplestreams endpoint: {{{#!highlight bash lxc remote add --protocol simplestreams ubuntu-minimal https://cloud-images.ubuntu.com/minimal/releases/ }}} Xenial: Launch the Xenial minimal image: {{{#!highlight bash lxc launch ubuntu-minimal:xenial }}} Bionic: Launch the Bionic minimal image: {{{#!highlight bash lxc launch ubuntu-minimal:bionic }}} == Additional Info == * File bugs @ [[https://bugs.launchpad.net/cloud-images/+filebug]]