7.3.4. 비보안 레지스트리
신뢰할 수 없는 인증서를 사용하거나 인증서가 전혀 없는 외부 레지스트리는 피해야 합니다.
그러나 docker
데몬이 리포지토리에서 이미지를 가져올 수 있도록 --insecure-registry
옵션을 사용하여 비보안 레지스트리를 추가해야 합니다. 이 옵션은 --add-registry
옵션과 동일하지만 docker
작업을 확인하지 않습니다.
검색을 활성화하고 차단 목록이 있는 경우 이미지 가져오기와 같은 다른 작업을 수행하려면 두 옵션을 모두 사용하여 레지스트리를 추가해야 합니다.
테스트용으로 비보안 localhost
레지스트리를 추가하는 방법의 예가 나와 있습니다.
프로시저
비보안 localhost 레지스트리를 추가하도록
/etc/containers/registries.conf
구성 파일을 수정하십시오.[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
컨테이너가 다시 시작됩니다.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
참고openshift_docker_insecure_registries
변수를 호스트의 IP 주소로 설정할 수도 있습니다.0.0.0.0/0
은 유효한 설정이 아닙니다.