2

私は約 1 か月間 docker をいじっていましたが、今ではいくつかのイメージがあります。最近、そのうちの 1 つを他の人と共有したいと思い、そのイメージ X を DockerHub にプッシュして、彼が私のリポジトリからプルできるようにしました。

ただし、これは時間の無駄のようです。ここで費やした合計時間は、私が docker push を実行した時間と、彼が docker pull を実行した時間です。そのイメージ X をビルドするのに必要な Dockerfile を彼に送信した場合、コストは Dockerfile を作成する時間、テキスト ファイルを渡す時間、および彼が docker build を実行する時間になります。私のDockerfilesをうまく維持してください。

それが私の質問です。これら 2 つのアプローチの長所と短所は何ですか? Docker Inc. が DockerfileHub サービスではなく DockerHub サービスを開始することを選んだのはなぜですか?

提案や回答をいただければ幸いです。どうもありがとう!

4

2 に答える 2

3

Dockerfile からイメージを作成し、そのイメージを Docker Hub にプッシュするとします。ビルド中に、いくつかのソースをダウンロードしてプログラムをビルドします。ただし、ビルドが完了すると、ソースが利用できなくなります。現在、Dockerfile は使用できなくなりましたが、Docker Hub のイメージは引き続き機能しています。それは Docker Hub のプロです。

しかし、それは短所にもなり得ます。たとえば、ソースコードに Heartbleed や Shellshock のようなひどいバグが含まれている場合。その後、ソースにパッチが適用されますが、Docker Hub のイメージは更新されません。

于 2014-12-05T09:52:20.920 に答える
0

実際、イメージをプッシュする時間とイメージをビルドする時間は、環境によって異なります。たとえば、組み込みシステム用のイメージを事前にビルドできますが、組み込みシステムではビルドしたくありません。

Docker Hub は、GitHub から Dockerfile を取得してイメージをビルドする自動ビルド機能を提供していました。イメージの Dockerfile は GitHub から取得できますので、共有のためのサービスを用意する必要はありませんDockerfile

于 2014-12-05T04:30:37.307 に答える