【发布时间】:2017-11-26 05:33:17
【问题描述】:
我正在尝试编写一个可以启动 Docker 容器的 Web 应用程序。 因此,我使用的是 dockerode 模块。 短模块如下所示:
//index.js
var Docker = require('dockerode');
var docker = new Docker({socketPath: '/var/run/docker.sock'});
docker.buildImage({
/*
Building image over here...
*/
});
用这样的节点运行这个 JavaScript 文件:
node index.js
工作得很好。我的本地 Docker 安装将构建一个新映像,然后创建一个新容器。最后,这个容器将被启动。
但是,现在我正在尝试使用 Webpack 将此模块添加到 Web 应用程序中。
但现在的问题是:当使用 webpack.config.js 属性时
target: 'web'
Webpack 成功构建文件,但打开网站时收到此问题:
Uncaught TypeError: stat is not a function
at loop (gen.js:27528)
at onnextentry (gen.js:27640)
at Object.exports.pack (gen.js:27643)
at Docker.buildImage (gen.js:22180)
at buildImage (gen.js:21892)
at Object.<anonymous> (gen.js:21888)
at Object.<anonymous> (gen.js:21926)
at __webpack_require__ (gen.js:20)
at Object.exports.initBackend (gen.js:21874)
at initBackends (gen.js:11552)
我找不到有关此问题的任何信息。生成的 JS 文件中带下划线的行是这一行:
stat(nextAbs, function (err, stat) {
关于为什么我可以使用 node 构建 docker 镜像但在浏览器内部调用时不能构建 docker 镜像的任何建议?甚至可以通过浏览器启动 Docker 容器吗? 提前致谢。
【问题讨论】:
标签: javascript node.js docker webpack