首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用windows上的nodejs在停靠器中挂载卷

使用windows上的nodejs在停靠器中挂载卷
EN

Stack Overflow用户
提问于 2017-03-24 09:14:42
回答 1查看 1.5K关注 0票数 1

我尝试使用windows上的nodejs应用程序在docker容器中挂载卷。当我在cmd上尝试这个命令时:

docker运行-it -v C:\User\User\data:/-v:

它工作,容器包含卷。但是,如果我尝试使用nodejs (dockerode模块)来完成这个任务,它就无法工作。我的代码:

代码语言:javascript
复制
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上使用相同的代码时,它可以正常工作。我怎么才能修好它?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-04-30 07:38:45

您需要转义路径参数-如果没有正确的转义,绑定就被解析为C:UsersUserdata:/stuff:rw (\U映射到U,等等)。

所以而不是

代码语言:javascript
复制
'Binds': ['C:\Users\User\data:/stuff:rw']

使用:

代码语言:javascript
复制
'Binds': ['C:\\Users\\User\\data:/stuff:rw']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42995473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档