コンテンツにスキップ
日本語
Dashboard

SnapVM の使い方

SnapVM は、マシン、ターミナルセッション、サービス、ストレージ、組織という少数の永続的な概念で構成されています。これらは主に Web コンソールから操作し、ローカルターミナルで作業する場合は CLI も利用できます。

  1. コンソールで組織を選択します。
  2. プロジェクト、デモ、授業、自動化用のマシンを作成します。
  3. ターミナルを開いてワークスペースをセットアップします。
  4. 探索的な短いコマンドはターミナルで実行します。
  5. 長時間動かすプロセスはサービスとして定義します。
  6. アイドル時はマシンを停止するかハイバネーションに任せます。
  7. 後で再度マシンを開き、永続化されたファイルシステムから作業を続けます。
  8. 必要に応じて CLI をインストールし、ローカルのプロジェクトディレクトリで snapvm use により対象マシンを設定します。

マシンは名前付きのワークスペースです。ファイル、パッケージ、リポジトリ、サービス定義、アプリケーション URL 設定など、必要な状態を保持します。

マシン名はアプリケーション URL の一部になる場合があります。api-demoautomation-labfrontend-review のように短く安定した名前を使います。

ターミナルセッションは、マシンで使うインタラクティブシェルです。開発、デバッグ、ツールのインストール、ログ確認に適しています。

ブラウザ切断後もセッションに再接続できる場合がありますが、セッションはあくまで対話的な作業面です。ハイバネーション後もプロセスを復帰させたい場合はサービスを使います。

サービスは永続的なプロセス定義です。Web サーバー、データベース、キュー、ワーカー、言語サーバー、自動化プロセスなど、マシン復帰時に再起動してほしいものに使います。

通常、サービスには次の情報があります。

  • 名前
  • コマンドと引数
  • 作業ディレクトリ
  • 必要に応じた環境変数
  • 必要に応じた HTTP ポート
  • 実行状態

ストレージとハイバネーション

Section titled “ストレージとハイバネーション”

ファイルシステムは停止やハイバネーションをまたいで永続します。ソースコード、インストール済みパッケージ、ディスク上のデータベース、設定ファイル、生成物が含まれます。

インメモリの状態は永続しません。インタラクティブシェルで起動したプロセスは、サービスとして管理されていない限り、ランタイムがスリープすると停止します。

マシンは組織に属します。ユーザーはアクセス権のある組織のマシンだけを閲覧および操作できます。

一般的なアクセス管理はコンソールで行います。

  • 組織の作成または切り替え
  • メンバーの招待
  • マシン所有状況の確認
  • デプロイで対応している場合のメンバーロール更新
やりたいこと使うもの
プロジェクト用の永続ワークスペースマシン
ブラウザ上のシェルで探索するターミナルセッション
ローカルターミナルからマシンでコマンドを実行するCLI
長時間動かすプロセスサービス
アイドル後も残るファイルやパッケージ永続ファイルシステム
チーム単位の所有権とアクセス管理組織