如何使用Dockerode和Javascript获取所有容器(How to get all containers using Dockerode and Javascript)
我试图在Meteor应用程序上显示所有正在运行的容器以及我在Docker中停止的所有容器。 目前我只能显示正在运行的容器,当我停止运行时,它会自动从数据库中删除。
有我的代码,我得到的容器(以及我需要一点帮助也得到了停止的容器):
infosContainers.initContainers': function() { /* create Docker object */ docker = new Docker({socketPath: '/var/run/docker.sock'}); /* create 2 var that are my containers running in docker */ meteorCtn = docker.getContainer('vialfeedmaclecturearticle_app_1'); mongoCtn = docker.getContainer('vialfeedmaclecturearticle_mongo_1'); /* I don't really understand but it's on the Dockerode page */ meteorCtn.defaultOptions.start.Binds = ["/tmp:/tmp:rw"]; mongoCtn.defaultOptions.start.Binds = ["/tmp:/tmp:rw"]; /* Add the id in the collection */ docker.listContainers(Meteor.bindEnvironment(function (err, containers) { containers.forEach(function (containerInfo) { InfosContainers.insert({ idContainer: containerInfo.Id, nameContainer: containerInfo.Names[0], stateContainer: containerInfo.State }); }); })); },有人已经这样做了? 感谢您的帮助
I'm trying to display on a Meteor app all running containers and all stopped containers that I have in Docker. For the moment I can only display the running containers when I stop one he's deleted from the DB automatically.
There is my code where I get the containers (and where I need a little bit help to got the stopped containers too):
infosContainers.initContainers': function() { /* create Docker object */ docker = new Docker({socketPath: '/var/run/docker.sock'}); /* create 2 var that are my containers running in docker */ meteorCtn = docker.getContainer('vialfeedmaclecturearticle_app_1'); mongoCtn = docker.getContainer('vialfeedmaclecturearticle_mongo_1'); /* I don't really understand but it's on the Dockerode page */ meteorCtn.defaultOptions.start.Binds = ["/tmp:/tmp:rw"]; mongoCtn.defaultOptions.start.Binds = ["/tmp:/tmp:rw"]; /* Add the id in the collection */ docker.listContainers(Meteor.bindEnvironment(function (err, containers) { containers.forEach(function (containerInfo) { InfosContainers.insert({ idContainer: containerInfo.Id, nameContainer: containerInfo.Names[0], stateContainer: containerInfo.State }); }); })); },Someone has already done that ? Thank you for the help
最满意答案
像往常一样,当你问你找到...所以有解决方案
docker.listContainers({all: true}, function(err, containers) { console.log('ALL: ' + containers.length); });As always when you ask you find... so there is the solution
docker.listContainers({all: true}, function(err, containers) { console.log('ALL: ' + containers.length); });更多推荐
发布评论