Quickstart

This overview will demonstrate how to quickly create and deploy a Bravetools image on your system.

Table of contents

  1. Quickstart
    1. Install Bravetools
    2. Define an Image
    3. Build the Image
    4. Deploy the Image

Install Bravetools

Begin by installing the latest binary of Bravetools. When Bravetools is installed for the first time, your host will need to be configured to interact with LXD either directly (Linux) or via Multipass (Mac, Windows). This is achieved through a single command:

brave init

Define an Image

Every image is configured through specifications described in a Bravefile. Let’s create a simple configuration for an Alpine Edge image with a Python3 installation:

touch Bravefile

Populate the empty Bravefile with this simple yaml config:

image: alpine-python3/1.0
base:
  image: alpine/edge
  location: public
packages:
  manager: apk
  system:
    - python3-dev
    - python3
service:
  name: alpine-edge-python3
  resources:
    ram: "4GB"
    cpu: 2

Build the Image

Now build the image:

$ brave build

You can verify that the image was created by listing all images available on your system:

$ brave images

The output should look something like this:

IMAGE                  	VERSION	ARCH 	CREATED   	SIZE 	HASH
alpine-python3         	1.0    	arm64	just now  	47MB 	6c3199081322e7006bc2b3b631e6cf9a

Note that Bravetools will build an image for your host CPU architecture. In case of this example, this is ARM64. You can configure a bravetools remote to take advantge of multi-arch build capabilities.

Deploy the Image

Since Bravetools uses a single configuration file for both building and deploying your image, all you need to deploy this Alpine image is already specified in the service section of you Bravefile. Deploy this image just by running:

$ brave deploy

Verify that the image is deployed:

$ brave units

NAME               	STATUS 	IPV4          	VOLUMES                                           	PORTS
alpine-edge-python3 Running	10.137.211.85 	root:->/                                          	

To delete the live image, run

$ brave remove alpine-edge-python3

That’s it! You have now configured and deployed your very first Bravetools image. Check out the docs to dive deeper.