7.3.4. 非セキュアなレジストリー
信頼されていない証明書を使用する外部レジストリー、または証明書がまったく使用されない外部レジストリーは使用しないでください。
ただし、非セキュアなレジストリーは、docker
デーモンがリポジトリーからイメージをプルできるように --insecure-registry
オプションを使用して追加する必要があります。これは --add-registry
オプションと同じですが、docker
操作については検証されていません。
レジストリーはこれらの両方のオプションを使用して追加される必要があります。 これにより、検索が可能になり、ブラックリストがある場合はイメージのプルなどの他の操作を実行することができます。
テストとして、以下に localhost
の非セキュアなレジストリーを追加する方法についての例を示します。
手順
/etc/containers/registries.conf
設定ファイルを localhost の非セキュアなレジストリーを追加するように変更します。[registries.search] registries = ['registry.redhat.io', 'my.registry.example.com', 'docker.io', 'localhost:5000' ] [registries.insecure] registries = ['localhost:5000'] [registries.block] registries = ['all']
注記セキュアではないレジストリーを
registries.search
セクションとregistries.insecure
セクションの両方に追加して、このようなレジストリーがセキュアではない、ホワイトリストとしてマークされていることを確認します。registeries.block
セクションに含まれるレジストリーは、registries.search
セクションに追加して、ホワイトリスト化しない限り、ブロックされます。docker
デーモンを再起動してレジストリーを使用します。$ sudo systemctl restart docker.service
docker
デーモンを再起動することにより、docker
コンテナーが再起動されます。コンテナーイメージレジストリー Pod を
localhost
で実行します。$ sudo docker run -p 5000:5000 registry:2
イメージをプルします。
$ sudo docker pull openshift/hello-openshift
イメージにタグを付けます。
$ sudo docker tag docker.io/openshift/hello-openshift:latest localhost:5000/hello-openshift-local:latest
イメージをローカルレジストリーにプッシュします。
$ sudo docker push localhost:5000/hello-openshift-local:latest
Ansible インストーラーを使用する場合、これは、
Ansible
ホストファイルのopenshift_docker_additional_registries
、openshift_docker_blocked_registries
、およびopenshift_docker_insecure_registries
変数を使用して設定できます。openshift_docker_additional_registries=registry.redhat.io,my.registry.example.com,localhost:5000 openshift_docker_insecure_registries=localhost:5000 openshift_docker_blocked_registries=all
注記ホストの IP アドレスに
openshift_docker_insecure_registries
変数も設定できます。0.0.0.0/0
は有効な設定ではありません。