deployments
create, manage, and control container deployments
create deployment
// Create a deployment from a template
const { deployment, estimatedHourlyCost } = await client.createDeployment({
nodeId: 'node_abc123', // Required: target node
name: 'my-ollama-server', // Optional: deployment name
templateId: 'ollama', // Use a template
env: { // Optional: environment variables
OLLAMA_MODELS: 'llama2',
},
});
// Or deploy a custom Docker image
const { deployment } = await client.createDeployment({
nodeId: 'node_abc123',
name: 'my-custom-app',
customImage: 'myregistry/myapp:latest',
env: {
API_KEY: 'secret',
},
});list deployments
// List your deployments
const { deployments, pagination } = await client.getDeployments({
status: 'running', // Filter by status
page: 1,
limit: 10,
});
// Status options: 'pending', 'running', 'stopped', 'failed', 'terminated'get deployment details
// Get deployment details
const deployment = await client.getDeployment('dep_xyz789');
// Access deployment endpoints
console.log(deployment.endpoints);
// [{ type: 'https', url: 'https://my-app.neuranet.network', internalPort: 8080 }]
console.log(deployment.status); // 'running'
console.log(deployment.createdAt); // timestamp
console.log(deployment.totalCost); // credits usedcontrol lifecycle
// Stop a running deployment
await client.stopDeployment('dep_xyz789');
// Start a stopped deployment
await client.startDeployment('dep_xyz789');
// Delete a deployment (stops if running)
await client.deleteDeployment('dep_xyz789');get deployment logs
// Get deployment logs
const { logs } = await client.getDeploymentLogs('dep_xyz789', {
tail: 100, // Last 100 lines
});
logs.forEach(log => {
console.log(`[${log.stream}] ${log.timestamp}: ${log.message}`);
});
// Stream options:
// - 'stdout': standard output
// - 'stderr': standard errordeployment types
interface Deployment {
id: string;
userId: string;
nodeId: string;
templateId?: string;
name: string;
status: DeploymentStatus;
endpoints: DeploymentEndpoint[];
env?: Record<string, string>;
totalCost: number;
createdAt: string;
startedAt?: string;
stoppedAt?: string;
}
type DeploymentStatus =
| 'pending'
| 'pulling'
| 'starting'
| 'running'
| 'stopping'
| 'stopped'
| 'failed'
| 'terminated';
interface DeploymentEndpoint {
type: 'http' | 'https' | 'tcp';
url: string;
internalPort: number;
}