Docker TLS/CA 인증서 구성

Docker TLS/CA 인증서 구성

Docker 데몬과 레지스트리 간의 TLS/CA 인증서 구성, 그리고 인증서를 신뢰하는 방법을 설명하는 문서예요.

출처: Configure the daemon and client with the registry certificate

본문

Docker는 기본적으로 HTTPS를 통해 레지스트리와 통신해요. 사설 레지스트리나 사용자 지정 CA를 사용할 때 올바른 인증서를 구성해야 해요.

레지스트리 CA 인증서 신뢰

레지스트리의 인증서가 공개 CA가 아니라면, 그 CA를 Docker가 신뢰하게 설정해야 해요. /etc/docker/certs.d/<레지스트리>/ 디렉터리에 CA 인증서(ca.crt)를 두면 돼요.

$ mkdir -p /etc/docker/certs.d/myregistry.example.com
$ cp ca.crt /etc/docker/certs.d/myregistry.example.com/ca.crt

클라이언트 인증서

레지스트리가 클라이언트 인증을 요구하면 client.cert, client.key를 같은 디렉터리에 두어요.

daemon/클라이언트 TLS

원격 daemon 접근을 TLS로 보호하려면 DOCKER_TLS_VERIFY, DOCKER_CERT_PATH 등을 구성하고 ca.pem, cert.pem, key.pem을 사용해요.

항목 구조

/etc/docker/certs.d/ 아래 각 레지스트리 이름 폴더에 인증서를 배치하면 Docker가 해당 레지스트리 접근 시 그 인증서로 검증/인증해요. 사설 레지스트리를 안전하게 사용하는 데 필수적인 구성이에요.

더 알아보기