2017-04-21 10 views
0

誰かが私を助けてくれることを願っています。私はDockerodeを使ってJavaScriptを介してDockerコンテナにアクションを加えています。JavaScriptを使用してDockerコンテナの名前を取得する方法は?

1つのコンテナの名前を取得するのに苦労します。リクエストは「ID XXXのコンテナの名前を取得する」ですが、動作させることはできません。私はlistContainersを使用して、私はオプションでプレーしようとしたことを行うには

:idContainerが知られているコンテナ

のIDですが、出力はすべてのコンテナの名前が含まれてい

docker.listContainers({id: idContainer}, Meteor.bindEnvironment(function(err, containers) { 
    if (containers != null) { 
     containers.forEach(Meteor.bindEnvironment(function(containerInfo) { 
      if(containerInfo.Names[0].startsWith("/")){ 
      containerInfo.Names[0] = containerInfo.Names[0].substr(1); 
      console.log(containerInfo.Names[0]); 
      } 
     })); 
    } 
})); 

が、私は本当に誰かが私

答えて

0

Docker API docsを見てみると役立つことを願って、私のテイクがあなたの呼び出しパラメータは多分不正な形式であるということです。あなたが指定する必要が

docker.listContainers({ id: idContainer }, function (...) {...}); 

代わりのドキュメントで

docker.listContainers({ filters: { id: idContainer } }, function (...) {...}); 

を、IDパラメータは、フィルタパラメータグループ内にあります。

+0

それはまだ私にすべてのコンテナを返しているのが奇妙です、なぜあなたはアイデアを持っていますか? –

+0

私はドッカーのAPIを扱っていません。調べるには、req構造体を外に出て、それをcurlまたはpostmanを介して同じコマンドをdocker apiデーモンに直接行うことができるテストと比較することができます。 – elpddev

+0

アドバイスありがとうございました、私はあなたの答えを正しいものとしてマークしました(それは意味がない) –

関連する問題