执行以下代码的dockerode npm在ubuntu 14.04上获取错误“connect EACCES /var/run/docker.sock”

问题描述 投票:0回答:1

我正在执行以下代码,以便在Ubuntu 14.04机器上使用npm dockerode获取所有容器的列表。 Docker容器正常运行。

var Docker = require('dockerode');
var docker = new Docker({socketPath: '/var/run/docker.sock'});

docker.listContainers({all: true}, function(err, containers) {
console.log('err ' + err);
console.log('ALL: ' + containers);
});

但是得到

错误连接EACCES /var/run/docker.sock

提前致谢。

node.js docker ubuntu
1个回答
0
投票

发生这种情况是因为您没有足够的权限来访问Docker。有两种解决方案:

  1. 使用sudo运行该命令。 (不建议)
  2. 使用以下命令将当前用户添加到docker组:sudo usermod -aG docker $USER。注销并在运行此命令后重新登录,然后再次尝试运行代码。 (推荐的)
© www.soinside.com 2019 - 2024. All rights reserved.