@jjdenhertog/ai-driven-development
Version:
AI-driven development workflow with learning capabilities for Claude
39 lines • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isRunningInDocker = isRunningInDocker;
const node_fs_1 = require("node:fs");
/**
* Detects if the current process is running inside a Docker container
*
* @returns true if running inside a Docker container, false otherwise
*/
function isRunningInDocker() {
// Check for /.dockerenv file (common in Docker containers)
if ((0, node_fs_1.existsSync)('/.dockerenv')) {
return true;
}
// Check for Docker in /proc/1/cgroup (Linux containers)
try {
if ((0, node_fs_1.existsSync)('/proc/1/cgroup')) {
const cgroup = (0, node_fs_1.readFileSync)('/proc/1/cgroup', 'utf8');
if (cgroup.includes('docker') || cgroup.includes('containerd')) {
return true;
}
}
}
catch (_a) {
// Ignore errors reading cgroup file
}
// Check if running in a container via environment variable
// This is set by some container runtimes
if (process.env.container === 'docker') {
return true;
}
// Additional check: look for container-specific environment variables
// that are commonly set in aidev containers
if (process.env.AIDEV_HOST_WORKSPACE) {
return true;
}
return false;
}
//# sourceMappingURL=isRunningInDocker.js.map