web-dev-qa-db-ja.com

Dockerのデフォルトのプライベートレジストリ

all内部Dockerイメージを一般的に保持するには、Dockerに独自のプライベートレジストリをセットアップする必要があります。

これを簡単にするために、内部でDocker-imageがproject/componentと呼ばれる設定をしたいと思います。これは、通常のDocker-imageからプルしたものと同じです https://index.docker.io/ =。

私は、index.docker.ioからこの形式の画像を取得しないことを確信しています。これらの画像はすべて、内部のインデクサーから取得されます。 imagenameのようなcentosの形式の画像も、内部リポジトリから取得されます。

では、デフォルトのインデクサーを変更する方法はありますか?または、少なくとも、プライベートインデクサーをポート5000からデフォルトとして試行されるものに変更します。つまり、private_indexer.internal/repo_nameではなくprivate_indexer.internal:5000/repo_nameから画像を取得します。

内部IPを指す独自のDNSにindex.docker.ioを配置することが最善の解決策ですか?

26
xeor

private_indexer.internal/repo_nameは問題なく使用できます。ポート80でレジストリコンテナーを実行するだけです(nginxやhipacheなどのリバースプロキシを前に追加して、ポート80から5000にトラフィックを渡すこともできます)。デフォルトのインデックスURLを変更するための質問の最初の部分については、おそらくDockerコードを変更して再コンパイルする必要があります。私はこれをかなり前のバージョンで試してみましたが、うまくいきましたが、当時は今のように簡単に使用できるプライベートレジストリサポートはありませんでした。したがって、私見は、すべてのプライベートイメージにプライベートレジストリURLをタグ付けすることをお勧めします。その後、公開インデックス(ubuntu、busybox)内の画像へのアクセスを失うことはありません。

12
odk