2017-06-22 80 views
0

我正在嘗試編寫一個可以啓動Docker容器的Web應用程序。 因此,我正在使用dockerode模塊。 短模塊如下所示:Dockerode使用節點,但不通過Webpack

//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) { 

爲什麼我可以通過使用節點構建泊塢窗圖像的任何建議,但不是當被調用瀏覽器的內部?是否有可能通過瀏覽器啓動Docker容器? 在此先感謝。

回答

2

它甚至有可能通過瀏覽器來啓動Docker容器?

沒有。瀏覽器無法與包括Docker套接字的任何系統套接字進行通信。

+0

感謝您的回覆! – user2410644