init project

This commit is contained in:
root
2026-07-31 13:12:54 -04:00
parent 0da92d5e02
commit f3863f760c
7215 changed files with 1860260 additions and 1 deletions
+41
View File
@@ -0,0 +1,41 @@
import { z } from 'zod';
import { errorResult, jsonResult, toErrorMessage } from '../shared.js';
import { dockerManager } from './dockerManager.js';
export function registerDockerStopRemoveTools(server) {
server.registerTool('docker_stop_container', {
title: 'Docker Stop Container',
description: 'Stop a Docker container started by this server.',
inputSchema: {
containerId: z.string().min(1).describe('Container ID returned by docker_run_container.'),
timeout: z.number().int().positive().optional().default(10).describe('Seconds to wait before killing.'),
},
}, async ({ containerId, timeout }) => {
try {
await dockerManager.ensureReachable();
await dockerManager.getDocker().getContainer(containerId).stop({ t: timeout });
return jsonResult({ stopped: true, containerId });
}
catch (error) {
return errorResult(toErrorMessage(error));
}
});
server.registerTool('docker_remove_container', {
title: 'Docker Remove Container',
description: 'Remove a Docker container started by this server.',
inputSchema: {
containerId: z.string().min(1).describe('Container ID returned by docker_run_container.'),
force: z.boolean().optional().default(false).describe('Force removal even if running.'),
},
}, async ({ containerId, force }) => {
try {
await dockerManager.ensureReachable();
await dockerManager.getDocker().getContainer(containerId).remove({ force });
dockerManager.untrack(containerId);
return jsonResult({ removed: true, containerId });
}
catch (error) {
return errorResult(toErrorMessage(error));
}
});
}
//# sourceMappingURL=stopRemove.js.map