Files
remote-mcp-manager/apps/server/src/config/env.ts
Dasemu ccb7fcd842 feat: enforce per-container memory/CPU limits
CONTAINER_MEMORY_MB and CONTAINER_CPUS (defaults 512/1) are now applied
to every installed MCP container's HostConfig instead of leaving them
unbounded.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-08 03:12:44 +02:00

21 lines
997 B
TypeScript

import path from "node:path";
const dataDir = process.env.DATA_DIR ?? path.resolve(process.cwd(), "../../data");
export const config = {
port: Number(process.env.PORT ?? 3000),
// Docker in prod; a rootless Podman socket (e.g. /run/user/<uid>/podman/podman.sock) in local dev.
dockerSocketPath: process.env.DOCKER_SOCKET_PATH ?? "/var/run/docker.sock",
mcpNetworkName: process.env.MCP_NETWORK_NAME ?? "mcp-net",
dataDir,
dbPath: process.env.DB_PATH ?? path.join(dataDir, "db.sqlite"),
reposDir: path.join(dataDir, "repos"),
logsDir: path.join(dataDir, "logs"),
publicBaseUrl: process.env.PUBLIC_BASE_URL ?? `http://localhost:${process.env.PORT ?? 3000}`,
adminPassword: process.env.ADMIN_PASSWORD,
sessionSecret: process.env.SESSION_SECRET,
// Per-container resource caps, applied to every installation (no per-installation override in V1).
containerMemoryMb: Number(process.env.CONTAINER_MEMORY_MB ?? 512),
containerCpus: Number(process.env.CONTAINER_CPUS ?? 1),
};