Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions main.js
Original file line number Diff line number Diff line change
Expand Up @@ -421,11 +421,12 @@ function isUncPath(path) {

// Check if running in Docker container
function isDockerContainer() {
// Check for Docker environment indicators
// Check for Docker environment indicators (Podman creates /run/.containerenv instead of /.dockerenv)
const hasDockerenv = fs.existsSync('/.dockerenv');
const hasContainerenv = fs.existsSync('/run/.containerenv');
const hasCgroup = fs.existsSync('/proc/self/cgroup');
const cgroupContainsDocker = hasCgroup && fs.readFileSync('/proc/self/cgroup', 'utf8').includes('docker');
const result = hasDockerenv || cgroupContainsDocker;
const result = hasDockerenv || hasContainerenv || cgroupContainsDocker;
return result;
}

Expand Down Expand Up @@ -1148,7 +1149,9 @@ ${bridgeCode}
console.warn('[TLS] Port 80 listener:', err.message);
});
}
console.log(`Server mode requires UNC paths for all file operations`);
if (isServerMode && !isDockerContainer()) {
console.log(`Server mode requires UNC paths for all file operations`);
}
}
resolve();
};
Expand Down
1 change: 1 addition & 0 deletions scan-worker.js
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@ function loadStreamZip() {
// vs <1ms for local file systems, so we need more parallel operations to maintain throughput
function isDockerContainer() {
return require('fs').existsSync('/.dockerenv') ||
require('fs').existsSync('/run/.containerenv') ||
(require('fs').existsSync('/proc/self/cgroup') &&
require('fs').readFileSync('/proc/self/cgroup', 'utf8').includes('docker'));
}
Expand Down