SnapshotService
Daytona スナップショットを管理するためのサービス。スナップショットの一覧表示、取得、作成、削除に利用できます。
Constructors
new SnapshotService()
new SnapshotService( clientConfig: Configuration, snapshotsApi: SnapshotsApi, objectStorageApi: ObjectStorageApi): SnapshotServiceParameters:
clientConfigConfigurationsnapshotsApiSnapshotsApiobjectStorageApiObjectStorageApi
Returns:
SnapshotService
Methods
activate()
activate(snapshot: Snapshot): Promise<Snapshot>スナップショットを有効化します。
Parameters:
snapshotSnapshot - 有効化するスナップショット
Returns:
Promise<Snapshot>- 有効化された Snapshot インスタンス
create()
create(params: CreateSnapshotParams, options: { onLogs: (chunk: string) => void; timeout: number;}): Promise<Snapshot>指定された Image 定義から新しいスナップショットを作成して登録します。
Parameters:
paramsCreateSnapshotParams - スナップショット作成用のパラメータ。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:
snapshotSnapshot - 削除するスナップショット
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:
namestring - 取得するスナップショットの名前
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[]imagestring | Imagenamestringresources?Resources
スナップショット
type Snapshot = SnapshotDto & { __brand: "Snapshot";};あらかじめ構成されたサンドボックスである Daytona のスナップショットを表します。
型定義:
\_\_brand“Snapshot”