index.js (449B)
1 'use strict'; 2 const fs = require('fs'); 3 4 let isDocker; 5 6 function hasDockerEnv() { 7 try { 8 fs.statSync('/.dockerenv'); 9 return true; 10 } catch (_) { 11 return false; 12 } 13 } 14 15 function hasDockerCGroup() { 16 try { 17 return fs.readFileSync('/proc/self/cgroup', 'utf8').includes('docker'); 18 } catch (_) { 19 return false; 20 } 21 } 22 23 module.exports = () => { 24 if (isDocker === undefined) { 25 isDocker = hasDockerEnv() || hasDockerCGroup(); 26 } 27 28 return isDocker; 29 };