base template, execute a shell command, read the output, and clean up — all in under ten minutes.
1
Prerequisites
Before you begin, make sure you have:
- A running FissionPlane installation on a Kubernetes cluster. If you haven’t installed it yet, follow the Installation guide first.
- The control plane URL for your installation (for example,
https://api.sandbox.example.com). - An API key issued by your FissionPlane control plane.
- The runtime for your chosen SDK: Node.js 20+, Python 3.10+, or Rust 1.97+ with a Tokio runtime.
2
Install the SDK
Install the FissionPlane SDK for your language.
3
Set environment variables
Export your control plane URL and API key so the SDK can find them automatically. Replace the placeholder values with your actual credentials.Every SDK reads both variables at startup, so you won’t need to hard-code credentials into your application code.
4
Create a client
Instantiate the FissionPlane client. When both environment variables are set, the constructor requires no arguments.You can also pass credentials directly:
- TypeScript
- Python
- Rust
5
Create a sandbox
Create a sandbox from the built-in
base template. The call returns after a node acknowledges the sandbox — your microVM is ready to accept commands.- TypeScript
- Python
- Rust
Sandboxes are terminated automatically when their deadline expires. The
deadline_seconds value above gives the sandbox ten minutes. You can extend the deadline at any time with sandbox.extendDeadline() (TypeScript), sandbox.extend_deadline() (Python), or sandbox.extend_deadline() (Rust).6
Run a command
Run a shell command inside the microVM and print its output.
commands.run() waits for the process to exit and returns the exit code, stdout, and stderr.- TypeScript
- Python
- Rust
7
Delete the sandbox
Delete the sandbox when you’re done. This immediately terminates the microVM and releases node capacity.In production, wrap your commands in a
- TypeScript
- Python
- Rust
try/finally block to ensure cleanup:Next steps
Now that your first sandbox is running, explore what else you can do.Run commands
Stream stdout and stderr in real time, open PTY sessions, and send signals to running processes.
Work with files
Read and write files inside a sandbox, list directories, and watch for filesystem changes.
Expose ports
Make a sandbox port accessible over a private or public HTTPS URL from outside the cluster.
Sandbox lifecycle
Understand how to pause and resume sandboxes, manage deadlines, and use capability tokens.