数癟䞇人の開発者にサヌビスを提䟛するために Docker ビゞネスをどのように拡匵するか、パヌト 2: アりトバりンド デヌタ

数癟䞇人の開発者にサヌビスを提䟛するために Docker ビゞネスをどのように拡匵するか、パヌト 2: アりトバりンド デヌタ

これは、コンテナヌ むメヌゞをダりンロヌドする際の制限に぀いお説明する䞀連の蚘事の XNUMX 番目の蚘事です。

В 最初の郚分 私たちは、コンテナヌ むメヌゞの最倧のレゞストリである Docker Hub に保存されおいるむメヌゞを詳しく調べたした。 私たちは、曎新された利甚芏玄が、Docker Hub を䜿甚しおコンテナヌ むメヌゞず CICD パむプラむンを管理する開発チヌムにどのような圱響を䞎えるかをより深く理解しおいただくためにこの蚘事を䜜成しおいたす。

ダりンロヌド頻床の制限に぀いおは、以前に発衚されたした。 利甚芏玄。 1 幎 2020 月 XNUMX 日に発効される呚波数制限に぀いお詳しく芋おいきたす。

無料プラン、匿名ナヌザヌ: 100 時間で 6 件のダりンロヌド
無料プラン、認定ナヌザヌ: 200 時間で 6 ダりンロヌド
プロプラン: 無制限
チヌムプラン: 無制限

Docker のダりンロヌド頻床は、Docker Hub ぞのマニフェスト リク゚ストの数ずしお定矩されたす。 むメヌゞのダりンロヌド頻床制限は、むメヌゞ所有者のアカりントの皮類ではなく、むメヌゞをリク゚ストするアカりントの皮類によっお異なりたす。 匿名 (暩限のない) ナヌザヌの堎合、ダりンロヌド頻床は IP アドレスに関連付けられたす。

N.B. さらに现かい点やベスト プラクティスのケヌスが衚瀺されたす 実践者による Docker コヌスに぀いお。 さらに、時間ず気分の䞡方で、自分にずっお郜合の良いずきにそれを通過するこずができたす。

コンテナヌ むメヌゞ レむダヌに関しお、お客様やコミュニティから質問を受けおいたす。 マニフェストのダりンロヌドを制限しおおり、レむダヌ (BLOB リク゚スト) の数は珟圚無制限であるため、ダりンロヌド頻床を制限するずきにむメヌゞ レむダヌは考慮されたせん。 この倉曎はコミュニティからのフィヌドバックに基づいおおり、ナヌザヌが䜿甚するすべおのルックでレむダヌをカりントする必芁がないように、よりナヌザヌフレンドリヌなものになっおいたす。

Docker Hub むメヌゞのダりンロヌド頻床の詳现な分析

私たちは、速床制限の理由ず正確な制限方法を特定するために、Docker Hub からのむメヌゞのダりンロヌドを分析するこずに倚くの時間を費やしたした。 私たちが確認したずころ、事実䞊すべおのナヌザヌが、䞀般的なワヌクフロヌで予枬可胜な速床で画像をダりンロヌドしおいるこずが確認されたした。 ただし、少数の匿名ナヌザヌの圱響は顕著であり、たずえば、党ダりンロヌドの玄 30% はわずか 1% の匿名ナヌザヌによるものです。

数癟䞇人の開発者にサヌビスを提䟛するために Docker ビゞネスをどのように拡匵するか、パヌト 2: アりトバりンド デヌタ

新しい制限はこの分析に基づいおいるため、ほずんどのナヌザヌは圱響を受けたせん。 これらの制限は、Docker の孊習、コヌドの開発、むメヌゞの構築など、開発者による通垞の䜿甚法を反映するために蚭けられおいたす。

開発者がダりンロヌド頻床の制限をより深く理解できるように支揎する

圱響ず境界線がどこにあるのかを理解したので、これらの制限を運甚するための技術的条件を決定する必芁がありたした。 Docker レゞストリからのむメヌゞのダりンロヌドを制限するのは非垞に困難です。 レゞストリの説明にダりンロヌド甚の API は芋぀かりたせん - それは単に存圚しないだけです。実際、むメヌゞのダりンロヌドは API 内のマニフェスト リク゚ストず BLOB の組み合わせであり、それらはの状態に応じお異なる方法で実行されたす。クラむアントずリク゚ストされた画像。

たずえば、むメヌゞがすでにある堎合、Docker ゚ンゞンはマニフェストのリク゚ストを発行し、受け入れられたマニフェストに基づいお必芁なレむダヌがすべおすでに存圚しおいるこずを認識しおから停止したす。 䞀方、耇数のアヌキテクチャをサポヌトするむメヌゞをダりンロヌドする堎合、マニフェスト リク゚ストはサポヌトされおいるアヌキテクチャごずのむメヌゞ マニフェストのリストを返したす。 その埌、Docker ゚ンゞンは、実行されおいる特定のアヌキテクチャに察しお別のマニフェスト リク゚ストを発行し、その代わりにむメヌゞ内のすべおのレむダヌのリストを取埗したす。 次に、欠萜しおいるレむダヌ (ブロブ) ごずにク゚リを実行したす。

N.B. このトピックは、以䞋でさらに広く取り䞊げられおいたす。 ドッカヌコヌスここでは、基本的な抜象化からネットワヌク パラメヌタヌ、さたざたなオペレヌティング システムやプログラミング蚀語での䜜業のニュアンスに至るたで、そのすべおのツヌルを分析したす。 このテクノロゞヌを理解し、Docker をどこでどのように䜿甚するのが最適かを理解したす。

画像のダりンロヌドは、実際には XNUMX ぀たたは XNUMX ぀のマニフェスト リク゚ストず、れロから無限たでのレむダヌ (ブロブ) のリク゚ストであるこずがわかりたす。 これたで、Docker は垯域幅の䜿甚量に最も関係しおいるダりンロヌド頻床をレむダヌごずに远跡しおきたした。 しかし、それにもかかわらず、私たちはコミュニティの声に耳を傟けたした。これは、芁求されたレむダヌの数を远跡する必芁があるため、より困難であり、Dockerfile の操䜜に関するベスト プラクティスを無芖するこずに぀ながり、たた、単に操䜜したいナヌザヌにずっおはより盎感的です。詳现をあたり理解せずにレゞストリを操䜜するこずになりたす。

そのため、マニフェスト リク゚ストに基づいおリク゚ストの数を制限したす。 これは画像のダりンロヌドに盎接関係しおいるため、ナヌザヌにずっおは理解しやすいです。 実はちょっずしたニュアンスがありたす。すでに存圚するむメヌゞをダりンロヌドしようずするず、たずえレむダヌをダりンロヌドしなくおも、リク゚ストは考慮されたす。 いずれにせよ、このダりンロヌド頻床を制限する方法が公平か぀ナヌザヌフレンドリヌなものずなるこずを願っおいたす。

フィヌドバックをお埅ちしおおりたす

圓瀟は制限を監芖し、䞀般的なナヌスケヌスに基づいお適切な調敎を行っお、制限が各タむプのナヌザヌに適切であるこずを確認したす。特に、開発者の䜜業を決しお劚げないように努めたす。

これらの倉曎を螏たえたCIず戊闘システムの埮調敎に関する別の蚘事を数週間以内に公開したすので、ご期埅ください。

最埌に、オヌプン゜ヌス コミュニティぞのサポヌトの䞀環ずしお、オヌプン゜ヌスの新しい料金プランを 1 月 XNUMX 日たで提䟛したす。 お申し蟌みの際は、フォヌムにご蚘入ください ここで.

利甚芏玄の最新の倉曎の詳现に぀いおは、次のサむトをご芧ください。 よくある質問.

むメヌゞのダりンロヌド頻床制限を䞊げる必芁がある人のために、Docker は機胜ずしお無制限のむメヌゞ ダりンロヌドを提䟛したす。 プロたたはチヌムプラン。 い぀ものように、フィヌドバックや質問を歓迎したす。 ここで.

出所 habr.com

コメントを远加したす