/usr/local/lib/node_modules/pm2/node_modules/systeminformation/lib
NameSizeModeActions
audio.js82370644editdlrm
battery.js156400644editdlrm
bluetooth.js113780644editdlrm
bluetoothVendors.js364620644editdlrm
cli.js42330755editdlrm
cpu.js712280644editdlrm
docker.js267780644editdlrm
dockerSocket.js78680644editdlrm
filesystem.js648150644editdlrm
graphics.js495620644editdlrm
index.d.ts282970644editdlrm
index.js159330644editdlrm
internet.js77320644editdlrm
memory.js258870644editdlrm
network.js725010644editdlrm
osinfo.js485340644editdlrm
printer.js71810644editdlrm
processes.js522130644editdlrm
system.js355180644editdlrm
usb.js105830644editdlrm
users.js131940644editdlrm
util.js664770644editdlrm
virtualbox.js48580644editdlrm
wifi.js292570644editdlrm
Edit: /usr/local/lib/node_modules/pm2/node_modules/systeminformation/lib/dockerSocket.js (7868B)
'use strict'; // @ts-check // ================================================================================== // dockerSockets.js // ---------------------------------------------------------------------------------- // Description: System Information - library // for Node.js // Copyright: (c) 2014 - 2026 // Author: Sebastian Hildebrandt // ---------------------------------------------------------------------------------- // License: MIT // ================================================================================== // 13. DockerSockets // ---------------------------------------------------------------------------------- const net = require('net'); const isWin = require('os').type() === 'Windows_NT'; const socketPath = isWin ? '//./pipe/docker_engine' : '/var/run/docker.sock'; class DockerSocket { getInfo(callback) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/info HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } listImages(all, callback) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/images/json' + (all ? '?all=1' : '') + ' HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } inspectImage(id, callback) { id = id || ''; if (id) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/images/' + id + '/json?stream=0 HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } else { callback({}); } } listContainers(all, callback) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/containers/json' + (all ? '?all=1' : '') + ' HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } getStats(id, callback) { id = id || ''; if (id) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/containers/' + id + '/stats?stream=0 HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } else { callback({}); } } getInspect(id, callback) { id = id || ''; if (id) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/containers/' + id + '/json?stream=0 HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } else { callback({}); } } getProcesses(id, callback) { id = id || ''; if (id) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/containers/' + id + '/top?ps_args=-opid,ppid,pgid,vsz,time,etime,nice,ruser,user,rgroup,group,stat,rss,args HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } else { callback({}); } } listVolumes(callback) { try { let socket = net.createConnection({ path: socketPath }); let alldata = ''; let data; socket.on('connect', () => { socket.write('GET http:/volumes HTTP/1.0\r\n\r\n'); }); socket.on('data', (data) => { alldata = alldata + data.toString(); }); socket.on('error', () => { socket = false; callback({}); }); socket.on('end', () => { const startbody = alldata.indexOf('\r\n\r\n'); alldata = alldata.substring(startbody + 4); socket = false; try { data = JSON.parse(alldata); callback(data); } catch { callback({}); } }); } catch { callback({}); } } } module.exports = DockerSocket;