SnapshotService
Daytona スナップショットを管理するためのサービス。スナップショットの一覧表示、取得、作成、削除に利用できます。
Constructors
new SnapshotService()
new SnapshotService( clientConfig: Configuration, snapshotsApi: SnapshotsApi, objectStorageApi: ObjectStorageApi): SnapshotService
Parameters:
clientConfig
ConfigurationsnapshotsApi
SnapshotsApiobjectStorageApi
ObjectStorageApi
Returns:
SnapshotService
Methods
activate()
activate(snapshot: Snapshot): Promise<Snapshot>
スナップショットを有効化します。
Parameters:
snapshot
Snapshot - 有効化するスナップショット
Returns:
Promise<Snapshot>
- 有効化された Snapshot インスタンス
create()
create(params: CreateSnapshotParams, options: { onLogs: (chunk: string) => void; timeout: number;}): Promise<Snapshot>
指定された Image 定義から新しいスナップショットを作成して登録します。
Parameters:
params
CreateSnapshotParams - スナップショット作成用のパラメータ。options
作成処理のオプション。onLogs?
(chunk: string) => void - スナップショット作成時のログを処理するコールバック関数。timeout?
number - 既定ではタイムアウトなし。秒単位(0 はタイムアウトなし)。
Returns:
Promise<Snapshot>
Example:
const image = Image.debianSlim('3.12').pipInstall('numpy');await daytona.snapshot.create({ name: 'my-snapshot', image: image }, { onLogs: console.log });
delete()
delete(snapshot: Snapshot): Promise<void>
スナップショットを削除します。
Parameters:
snapshot
Snapshot - 削除するスナップショット
Returns:
Promise<void>
Throws:
スナップショットが存在しない、または削除できない場合
Example:
const daytona = new Daytona();const snapshot = await daytona.snapshot.get("snapshot-name");await daytona.snapshot.delete(snapshot);console.log("Snapshot deleted successfully");
get()
get(name: string): Promise<Snapshot>
名前を指定してスナップショットを取得します。
Parameters:
name
string - 取得するスナップショットの名前
Returns:
Promise<Snapshot>
- 要求されたスナップショット
Throws:
スナップショットが存在しない、またはアクセスできない場合
Example:
const daytona = new Daytona();const snapshot = await daytona.snapshot.get("snapshot-name");console.log(`Snapshot ${snapshot.name} is in state ${snapshot.state}`);
list()
list(): Promise<Snapshot[]>
すべてのスナップショットを一覧表示します。
Returns:
Promise<Snapshot[]>
- ユーザーがアクセス可能なすべてのスナップショットの一覧
Example:
const daytona = new Daytona();const snapshots = await daytona.snapshot.list();console.log(`Found ${snapshots.length} snapshots`);snapshots.forEach(snapshot => console.log(`${snapshot.name} (${snapshot.imageName})`));
CreateSnapshotParams
type CreateSnapshotParams = { entrypoint: string[]; image: string | Image; name: string; resources: Resources;};
新規スナップショットを作成するためのパラメータ。
型宣言:
entrypoint?
string[]image
string | Imagename
stringresources?
Resources
スナップショット
type Snapshot = SnapshotDto & { __brand: "Snapshot";};
あらかじめ構成されたサンドボックスである Daytona のスナップショットを表します。
型定義:
\_\_brand
“Snapshot”