Quick start guide

1) Setup an account & add credit

Before you can rent a machine on Vast.ai, you will need to setup an account and add a method of funding. Go to the billing page of the console and click on the Create Account link to setup a username and password.
Vast works on a credit system. You will need to add credits to your account before you can rent an instance. Click on the Add Credit button to see the billing options. Adding a credit card is the simplest method. Crypto payments through Crypto.com are also supported. You can select an initial amount to be billed and once that completes that amount of credit will be added to the account.
Once you spend that balance down, your instances will be paused until you add additional credits. To prevent that from happening, you can set a billing threshold and have your card auto-charged with your credit balance gets lower than the threshold you set.

2) Select a Linux docker OS image

Vast uses Linux docker images on rented GPU. You can select from one of the common OS images such as PyTorch, Tensorflow or Nvidia CUDA. Private and public repos are also supported. To select your OS image, click on the Edit Image & Config button in the upper left of the console create page.
We do not support running Windows on the rented machine. So you cannot rent a Vast instance to run a Windows program. However: Windows, Linux and macOS are all supported operating systems for renting a Vast instance and running Jupyter and/or SSH to connect to the rented machine.
There are four available template slots on the OS Image page available for custom docker images. Paste in the full docker image/tag name that would be used in the 'docker pull' command into the first field. For example, 'tensorflow/tensorflow:latest-gpu' would grab the Tensorflow image with the 'latest-gpu' version tag. Once the image is found, the interface will let you pick which version tag to use.
The next line is for docker create/run options, such as '-e TZ=UTC -p 8081:8081' which would set the instances timezone to UTC and map port 8081 to 8081.
The docker repository authentication fields at the bottom of the image interface are for specifying a docker repository and then the username/password for your account for authentication.

3) Select a launch mode

After an OS image is selected, you then select how you would like to launch the instance. For all relatively new users who are not comfortable with BASH or Linux, we highly recommend running Jupyter. Jupyter allows for running code on the instance through a Jupyter notebook which can be managed easily from the browser interface. Connections via SSH require setting up keys and require familiarity with command lines.


Select "Run a Jupyter-python notebook" to launch the instance with Jupyter pre-installed. The Jupyter direct HTTPS method uses an open port for faster upload/download. Learn more about Jupyter direct HTTPS launch mode.


To connect to Vast machines using SSH, you will need to generate an SSH key locally and upload the public key to the console account. On macOS/Linux this is striaght forward. For Windows users, see our Windows SSH/SCP guide.
On macOS, open a terminal. Then the two steps are the same for macOS/LInux. Use this command to generate the key and store it locally in the .ssh folder.
ssh-keygen -t rsa
Then get the public key:
cat ~/.ssh/id_rsa.pub
Copy the output of that command into your Vast account by logging in and going to the console account.
After your SSH key is setup, you can then use the SSH launch mode. Vast.ai supports two SSH connection types. The default SSH connection goes through a proxy or bounce server in order to connect to the machine. This launch mode will work on any machine, even if the machine has no open ports but is slow.
By ticking the "Use direct SSH connection" box the machine will use an open port to setup a second SSH demon that can be connected to directly for faster uploading and downloading. Learn more about the direct SSH launch mode.
Selecting a direct SSH connection launch mode will automatically filter out all machines without open ports, limiting the number of machines available to rent.


This allows you to configure a docker run command with a normal ENTRYPOINT process, instead of setting up ssh and remote access. You will not be able to retrieve the command's output. Unless you know you intend to use a docker ENTRYPOINT, you probably want the ssh launch type with an onstart script.

4) Filter machines

Use the filters to specify the GPU number, type and other factors such as port ranges, number of CPUs, amount of GPU ram and more. Each filter will narrow the offers displayed.

5) Rent the instance

Hitting the blue RENT button will accept the offer and create an instance with the specified OS image and launch mode. Once rented, the instance will appear in the Instances tab.