Moby: Dockerホスト間のピアツーピアプッシュ/プル

作成日 2013年03月29日  ·  22コメント  ·  ソース: moby/moby

ircで@shykesと話し合った後。

Dockerデーモンが実行されているときは、プッシュ/プル要求を受け入れる必要があります。 これにより、2つのデーモンがp2pまたは集中型の方法で相互にイメージを送信できるようになります。

さらに、実行を無効にする-norunオプションが必要です。 これは、専用のイメージリポジトリを実行するときに役立ちます。 このモードでは、dockerはlxcまたはaufsモジュールがなくても機能するはずです。

これが存在すると、現在のパブリックリポジトリの実装をdockerデーモンに置き換えることができます。

aredistribution exexpert kinfeature

全てのコメント22件

すべての点で正しい:)

私たちが狙っているのは、go言語に匹敵するシステムです。 例えば。 パッケージはどこにでもホストできます。便利なように、品質、監査、安全性などのガイドラインを備えた中央のキュレートされた名前空間があります。

これは#21のサブコンポーネントです。

#350との違いを明確にするためにタイトルを変更しました。

この問題は、ピアツーピアのプッシュ/プル機能をDockerに追加することに関するものです。 この機能により、2つのDockerホストは、レジストリとイメージを交換しているかのように、イメージを直接交換できます。

ここでもう少し詳細を考えます。

  • 別のデーモンからのプッシュとプルをサポートしますか?
  • Dockerは常にイメージのプッシュ(およびプル)を受け入れる必要がありますか、それとも無差別モードで実行する必要がありますか?
  • デーモンについてはどうですか?デーモンの認証と承認?
  • 別のデーモンにプッシュするためのコマンドは何ですか? docker push -d other.docker.com myimage
  • 転送は、通常のレジストリプッシュ/プルとまったく同じメカニズムを使用しますか? (HTTPなど)
  • #21はこの問題に関係しています。 たとえば、イメージを別のデーモンにPOSTするためのルートが含まれます。 または、レジストリが使用するAPIに取って代わられるかもしれません。

2013年4月8日月曜日午後8時21分、Caleb [email protected]書き込み:

  • 別のデーモンからのプッシュとプルをサポートしますか?

はい、そう思います。 いずれかを選択する必要がある場合は、プッシュを選択して開始します。

  • Dockerは常に画像のプッシュ(およびプル)を受け入れる必要がありますか、それともそれを行います
    無差別モードで実行する必要がありますか?

そのように始めてもいいと思います。 条件付きスイッチにすることができます、
例えば。 'docker -d --no-push-pull'

  • デーモンについてはどうですか?デーモンの認証と承認?

後で心配できると思います。

  • 別のデーモンにプッシュするためのコマンドは何ですか? docker push -d
    other.docker.com myimage?

これは合理的なようです。 @ samalba @ kencochraneと@ shin-は誰ですか
レジストリの実装はここで意見があるかもしれません。

  • 転送は通常とまったく同じメカニズムを使用しますか
    レジストリのプッシュ/プル? (HTTPなど)

はい、それが目標です。

  • 21https://github.com/dotcloud/docker/issues/21はこれに結びついています
    問題。 たとえば、画像をPOSTするためのルートが含まれます
    別のデーモン。 または、レジストリがどのAPIに取って代わられるかもしれません
    を使用します。

絶対。 私は#21に取り組み始めました、あなたとベースを共有するのはどうですか
APIの2つの異なる部分で並行して作業しますか?

@shykesそれは素晴らしいですね。 #21コードをブランチにプッシュするだけですか?

これは、1.0APIを使用すると非常に簡単になります。

これは素晴らしいプラグインになります。誰かがこれに取り組むことに興味があるなら、ここでそう言ってください。 初期のAPIドキュメントと開始するためのヒントを紹介します。

これは面白そうですね。 この機能の厳しい期限はありますか? そうでない場合は、今月末までにそれを受け取って作業することができます(または、9月になる可能性があります。ここ数週間は他に作業があります)。

@shykes 1.0APIのより詳細な計画にアクセスできれば素晴らしいと思います。

@ tobstarr 、dockerがプッシュを受信できるようにするためにあなたのgoレジストリ実装を使用したい場合は...それはキラー機能になると思います! 統合のお手伝いをさせていただきます。

私はまだこれに興味があります。 誰かがそれを試してみたい場合は、私に知らせてください:)

私にとって+1

本当にこれを作ってもらいたいです。 レジストリAPIをリモートAPIの上にオーバーレイする基本的な考え方はありますか? /images/:id/jsonエンドポイントは多かれ少なかれ互換性があり、他のすべてが衝突することはないようです。

レジストリAPIがリモートAPIのサブセットである場合、それは本当に素晴らしいでしょう。 あるいは、レジストリである別のポート/ URL名前空間を持つことができると思います。 それとも完全に別のAPIですか?

+ 1-レジストリと同じように機能することを望んでいるので、レジストリとリモートのDockerデーモンのどちらと通信しているのかを気にする必要はありません。

これがどれだけの作業になるかはわかりませんが、同じであれば、レジストリのプッシュ/プル機能は、本質的にDockerデーモンの前にある軽量の認証になる可能性があります。

ここでSSHを介した実用的な実装: https ://github.com/docker/docker/pull/9304

近い将来、この機能をリリースする予定があるかどうか教えてもらえますか?
この機能が見たいです

+1それも見たいです!

+1。

これに+1。 現在、画像の転送にはdocker save | ssh -C docker loadを使用していますが、これにより、既存の画像を含め、_すべて_が転送されます。 重要なビットだけを転送できれば、はるかに簡単になります。

_USER POLL_

_このディスカッションに変更があった場合に通知を受け取る最良の方法は、右上の[購読]ボタンをクリックすることです。_

以下にリストされている人々は、ランダムな+1であなたの有意義な議論に感謝しています:

@xiaods
@hustcat
@leonardschneider
@ v00rh33s

まだ持っている有効な機能のように見えます。 それがセキュリティ/検証のもので可能かどうかわからない。
@tonistiigiの考え

@ LK4D4私たちはそれを閉じることができると思います。誰かが実際の提案デザインを与えることができれば、彼はトピックを追跡するために別の問題を開くことができます。

このページは役に立ちましたか?
0 / 5 - 0 評価