Skip to main content

Overview

RunPod CLI (runpodctl) is a command-line interface tool designed to automate and manage GPU pods on RunPod.

This tool facilitates efficient interaction with RunPod's cloud computing platform, enabling you to execute code, transfer data, and manage computing resources seamlessly.

Every Pod deployed to RunPod comes with this CLI tool installed.

Purpose

The primary purpose of RunPod CLI is to provide you with a straightforward, command-line-based method to:

  • Automate the management of GPU and CPU pods.
  • Execute code on these pods.
  • Transfer data between local systems and RunPod.
  • Leverage serverless computing capabilities.

RunPod also contains a functionality that enables you to develop and deploy endpoints entirely on RunPod's infrastructure.

That means you can get a worker up and running without knowing Docker or needing to structure handler code. This Dockerless workflow also streamlines the development process: you don't need to rebuild and push container images or edit your endpoint to use the new image each time you change your code.

To get started, see Managing Projects.

Installation

For more information, see Install RunPod CLI.

Install using wget:

wget -qO- cli.runpod.net | sudo bash

Configuration

Before using RunPod CLI, configure your API key, which can be obtained from your RunPod account.

runpodctl config --apiKey your-api-key

Key Features

Managing Pods

RunPod CLI allows you to manage your computing pods effectively. Below are some common commands:

  • Get all pods:

    runpodctl get pod
  • Get details of a specific pod:

    runpodctl get pod {podId}
  • Start an on-demand pod:

    runpodctl start pod {podId}
  • Start a spot pod with a bid:

    runpodctl start pod {podId} --bid=0.3
  • Stop a pod:

    runpodctl stop pod {podId}

For a comprehensive list of commands, refer to the RunPod CLI reference documentation.

Data Transfer

The RunPod CLI (runpodctl) provides simple commands for transferring data between your machine and RunPod. It’s preinstalled on all RunPod Pods and uses one-time codes for secure authentication, so no API keys are required.

Sending a File

To send a file from source machine:

runpodctl send data.txt

Example output:

Sending 'data.txt' (5 B)
Code is: 8338-galileo-collect-fidel
On the other computer run

runpodctl receive 8338-galileo-collect-fidel

Receiving a File

To receive a file on destination machine:

runpodctl receive 8338-galileo-collect-fidel

Example output:

Receiving 'data.txt' (5 B)

Receiving (<-149.36.0.243:8692)
data.txt 100% |████████████████████| ( 5/ 5B, 0.040 kB/s)

Transferring Files between Google Drive and RunPod

You can also use Google Drive for transferring files via the following links for Google Colab:

RunPod CLI (runpodctl) is a powerful tool for managing GPU and CPU resources on the RunPod platform.

It simplifies the process of executing code, transferring data, and managing pods, making it an essential tool for developers and data scientists leveraging cloud computing for AI and machine learning tasks.