我尝试在 Windows 上使用 nodejs 应用程序在 docker 容器中安装一个卷。当我在 cmd 上尝试此命令时:
docker run -it -v C:\Users\User\data:/stuff:rw ubuntu bash
它可以工作,并且容器包含该卷。但是,如果我尝试使用 nodejs(dockerode 模块)来做到这一点,它就不起作用。我的代码:
var dockerode = require('dockerode');
var docker = new dockerode();
var stream = require('stream');
docker.createContainer({
Image: 'ubuntu',
Cmd: ['ls', 'stuff'],
'Volumes': {
'/stuff': {}
},
'Binds': ['C:\Users\User\data:/stuff:rw']
}, function(err, container) {
container.attach({
stream: true,
stdout: true,
stderr: true,
tty: true,
'Binds': ['C:\Users\User\data:/stuff:rw']
}, function(err, stream) {
stream.pipe(process.stdout);
container.start({
'Binds': ['C:\Users\User\data:/stuff:rw']
}, function(err, data) {
console.log(data);
});
});
});
问题是它什么也没打印(东西目录是空的)。当我在 mac 上使用相同的代码时,它工作正常。我该如何解决?谢谢。