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.
- MacOS
- Linux/MacOS (WSL)
- Windows PowerShell
Install using Homebrew:
brew install runpod/runpodctl/runpodctl
Install using wget
:
wget -qO- cli.runpod.net | sudo bash
Install via PowerShell:
wget https://github.com/runpod/runpodctl/releases/latest/download/runpodctl-windows-amd64.exe -O runpodctl.exe
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.