SkyPilot Quickstart
SkyPilot is an open-source framework for running AI and batch workloads on any infrastructure provider, anywhere. Flexibly provision compute in any cloud with the same common configuration-- no switch statements or analyzing instance types.
Tigris enables this extreme portability by globally distributing your data so it's always close to the compute SkyPilot dynamically provisions. Since Tigris is a no egress fee storage provider, you don't have to worry about additional costs by going multi-cloud.
How to install SkyPilot
There's a few ways to set up SkyPilot, here's the easiest methods:
Conda
If you already use conda, follow the upstream guide on how to install SkyPilot. Make sure to install the adaptor for your infrastructure:
pip install "skypilot[aws]"
pip install "skypilot[kubernetes]"
# ...
Or mix and match:
pip install -U "skypilot[kubernetes,aws,gcp]"
How to use Docker to run SkyPilot
If you want to skip the grind and just get started, run this docker
command to
set up SkyPilot in a container:
# NOTE: '--platform linux/amd64' is needed for Apple silicon Macs
docker run --platform linux/amd64 \
-td --rm --name sky \
-v "$HOME/.sky:/root/.sky:rw" \
-v "$HOME/.aws:/root/.aws:rw" \
-v "$HOME/.config/gcloud:/root/.config/gcloud:rw" \
berkeleyskypilot/skypilot
Then open a shell with docker exec
:
docker exec -it sky /bin/bash
How to use Tigris with SkyPilot
If you're running a training job or storing model weights, reference these guides:
Otherwise, use boto3 to interact with Tigris:
# Create S3 service client
svc = boto3.client(
's3',
endpoint_url='https://t3.storage.dev',
config=Config(s3={'addressing_style': 'virtual'}),
)
# List buckets
response = svc.list_buckets()
for bucket in response['Buckets']:
print(f' {bucket["Name"]}')
# List objects
response = svc.list_objects_v2(Bucket='tigris-example')
for obj in response['Contents']:
print(f' {obj["Key"]}')
# Upload file
response = svc.upload_file('getting-started.py', 'tigris-example', 'getting-started.py')
# Download file
response = svc.download_file('tigris-example', 'getting-started.py', 'getting-started-2.py')
Now you have SkyPilot installed with Tigris. Enjoy building!