Посмотрев на эту ветку , вы, вероятно, сможете сделать что-то похожее на приведенное ниже, которое прочитает файл /proc/1/cpuset
внутри контейнера. Этот файл имеет текущий идентификатор контейнера, содержимое выглядит следующим образом:
/docker/7be92808767a667f35c8505cbf40d14e931ef6db5b0210329cf193b15ba9d605
В вашем случае это будет более надежно, чем использование os.hostname()
, поскольку он работает как с флагом --newtwork="host"
, так и без него docker команда запуска.
fs = require('fs')
fs.readFile('/proc/1/cpuset', 'utf8', function(err, data) {
if (err) {
return console.log(err);
}
let containerID = data.replace("/docker/", "");
console.log(containerID);
});