| description | Namespace provider for ComputeSDK - Deploy and manage containerized sandboxes on Namespace's cloud infrastructure. | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| layout |
|
Namespace provider for ComputeSDK - Deploy and manage containerized sandboxes on Namespace's cloud infrastructure.
npm install @computesdk/namespaceAdd your Namespace credentials to a .env file:
NSC_TOKEN=your_namespace_nsc_tokenimport { namespace } from '@computesdk/namespace';
const compute = namespace({
token: process.env.NSC_TOKEN,
});
// Create a new sandbox
const sandbox = await compute.sandbox.create();
console.log(`Sandbox created: ${sandbox.sandboxId}`);
// Get sandbox info
const info = await sandbox.getInfo();
console.log(`Sandbox status: ${info.status}`);
// Clean up when done
await sandbox.destroy();You can customize the compute resources allocated to your sandboxes:
const compute = namespace({
token: process.env.NSC_TOKEN,
virtualCpu: 4,
memoryMegabytes: 8192,
});
const sandbox = await compute.sandbox.create();| Option | Environment Variable | Required | Description |
|---|---|---|---|
token |
NSC_TOKEN |
Yes* | Your Namespace API token |
tokenFile |
NSC_TOKEN_FILE |
Yes* | Path to a JSON token file (e.g. from nsc login) containing bearer_token |
virtualCpu |
- | No | Number of virtual CPU cores (default: 2) |
memoryMegabytes |
- | No | Memory allocation in MB (default: 4096) |
machineArch |
- | No | Machine architecture (default: 'amd64') |
os |
- | No | Operating system (default: 'linux') |
documentedPurpose |
- | No | Documented purpose for the instance |
destroyReason |
- | No | Reason recorded when destroying instances (default: 'ComputeSDK cleanup') |
targetContainerName |
- | No | Target container name for command execution (default: 'main-container') |
* Provide either token (or NSC_TOKEN) or tokenFile (or NSC_TOKEN_FILE).
interface NamespaceConfig {
/** Namespace API token - if not provided, uses NSC_TOKEN env var */
token?: string;
/** Path to a JSON token file (e.g. from `nsc login`) containing bearer_token - falls back to NSC_TOKEN_FILE */
tokenFile?: string;
/** Virtual CPU cores for the instance (default: 2) */
virtualCpu?: number;
/** Memory in megabytes for the instance (default: 4096) */
memoryMegabytes?: number;
/** Machine architecture (default: 'amd64') */
machineArch?: string;
/** Operating system (default: 'linux') */
os?: string;
/** Documented purpose for the instance */
documentedPurpose?: string;
/** Reason for destroying instances (default: 'ComputeSDK cleanup') */
destroyReason?: string;
/** Target container name for command execution (default: 'main-container') */
targetContainerName?: string;
}- Learn about sandbox lifecycle management
- Explore Sandbox methods
- View the @computesdk/namespace package