2.6.2.6. Docker 구성 보안 생성

관리자는 컨테이너 이미지 레지스트리에 액세스하기 위한 인증 정보를 저장할 수 있는 Docker 구성 시크릿을 생성할 수 있습니다.

  • kubernetes.io/dockercfg. 이 시크릿 유형을 사용하여 로컬 Docker 구성 파일을 저장합니다. secret 오브젝트의 data 매개변수에 base64 형식으로 인코딩된 .dockercfg 파일의 콘텐츠가 포함되어야 합니다.
  • kubernetes.io/dockerconfigjson. 이 시크릿 유형을 사용하여 로컬 Docker 구성 JSON 파일을 저장합니다. secret 오브젝트의 data 매개변수에 base64 형식으로 인코딩된 .docker/config.json 파일의 내용이 포함되어야 합니다.

절차

  1. 컨트롤 플레인 노드의 YAML 파일에 Secret 오브젝트를 생성합니다.

    Docker 구성 보안 오브젝트

    apiVersion: v1
    kind: Secret
    metadata:
      name: secret-docker-cfg
      namespace: my-project
    type: kubernetes.io/dockerconfig 1
    data:
      .dockerconfig:bm5ubm5ubm5ubm5ubm5ubm5ubm5ubmdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2cgYXV0aCBrZXlzCg== 2

    1
    시크릿이 Docker 구성 파일을 사용하도록 지정합니다.
    2
    base64로 인코딩된 Docker 구성 파일의 출력

    Docker 구성 JSON 시크릿 오브젝트의 예

    apiVersion: v1
    kind: Secret
    metadata:
      name: secret-docker-json
      namespace: my-project
    type: kubernetes.io/dockerconfig 1
    data:
      .dockerconfigjson:bm5ubm5ubm5ubm5ubm5ubm5ubm5ubmdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2cgYXV0aCBrZXlzCg== 2

    1
    시크릿이 Docker 구성 JSONfile을 사용하도록 지정합니다.
    2
    base64로 인코딩된 Docker 구성 JSON 파일의 출력
  2. 다음 명령을 사용하여 Secret 오브젝트를 생성합니다.

    $ oc create -f <filename>.yaml
  3. Pod에서 보안을 사용하려면 다음을 수행합니다.

    1. "보안 생성 방법" 섹션에 표시된 대로 Pod의 서비스 계정을 업데이트하여 보안을 참조합니다.
    2. "secret을 보안 생성 방법" 섹션에 설명된 대로 보안을 환경 변수로 사용하거나 secret 볼륨을 사용하여 파일로 사용하는 Pod를 생성합니다.

추가 리소스