You must have a working installation of Docker.

Install Docker Engine

Install "Docker Engine" following the official installation instructions:

Configure Docker permissions

Using the post-installation instructions defined by Docker, be sure to add your current user to the docker group if you want to be able to run Docker without root privileges.

Create the `docker` group

sudo groupadd docker

Add your current user to the `docker` group.

sudo usermod -aG docker $USER

Activate the changes to groups.

newgrp docker

Ensure Docker is working

To test you have a working version of Docker, you can run their "hello world" container. docker version.

Run a "hello world" container to ensure Docker works correctly

docker run hello-world

Check your Docker Compose Version

Spin is set to run the latest version of Docker Compose (Version 2).

Check your Docker Compose version

docker compose version

If you do not see version 2.x installed, you'll need to update. How to Install Docker Compose V2 →

Download and install spin

Run the installer with this simple command in your terminal

Install Spin (no root permissions required)

bash -c "$(curl -fsSL"

The above script will install spin at the user level in ~/.spin, using less than 300KB of storage.

Configuring your PATH variable

By default, Spin will ask if you want to add it to your PATH variable. You may need to "source" the file after your first installation.

Use the "source" command to apply your profile changes immediately

# If you're using ZSH
source ~/.zshrc

# If you're using Bash
source ~/.bash_profile

Add spin to your PATH

In order for your terminal to know where spin is located, we need to add this to your "PATH" for your shell. Depending on your shell, you will need to paste the following text at the BOTTOM of the appropriate file:

Configuring your PATH variable manually

If you did not add spin to your PATH during the installation, you can manually add it to your PATH by adding this to your shell profile:

Add spin to your path

# Add this to `~/.zshrc` or `~/.bash_profile`
export PATH="$HOME/.spin/bin:$PATH"

Validate it's working

You should be able to run this and get a result 🥳

Confirm spin is working correctly by getting the version

spin version