17.4. 컨테이너 풀 시크릿 구성
컨테이너 이미지를 가져오려면 호스트 업데이트가 포함된 풀 시크릿을 사용하여 호스트 시스템을 구성해야 합니다. 이미 빌드된 이미지로 컨테이너 풀 시크릿을 구성할 수 있습니다. 베어 메탈에 Anaconda와 같은 외부 설치 프로그램 또는 bootc-image-builder 를 사용하는 경우 적용 가능한 풀 시크릿을 사용하여 시스템을 구성해야 합니다. 호스트 bootc는 rpm-ostree 와 공유되는 /etc/ostree/auth.json 파일에 구성을 작성합니다.
프로세스
단일 풀 시크릿을 사용하도록
bootc와 Podman 간에 심볼릭 링크를 생성합니다. 심볼릭 링크를 생성하면 컨테이너 이미지에 포함된 공통 영구 파일에 두 위치가 모두 있는지 확인합니다.FROM quay.io/<namespace>/<image>:<tag> COPY containers-auth.conf /usr/lib/tmpfiles.d/link-podman-credentials.conf RUN --mount=type=secret,id=creds,required=true cp /run/secrets/creds /usr/lib/container-auth.json && \ chmod 0600 /usr/lib/container-auth.json && \ ln -sr /usr/lib/container-auth.json /etc/ostree/auth.jsoncontainers-auth.conf파일을 만듭니다.# Make /run/containers/0/auth.json (a transient runtime file) # a symlink to our /usr/lib/container-auth.json (a persistent file) # which is also symlinked from /etc/ostree/auth.json. d /run/containers/0 0755 root root - L /run/user/0/containers/auth.json - - - - ../../../../usr/lib/container-auth.jsonpodman build명령을 사용하여 이미지를 빌드합니다.$ podman build --secret id=creds,src=$HOME/.docker/config.jsoncontainerfile을 실행하면 다음 작업이 수행됩니다.
-
Containerfile은
containers-auth.conf를 일시적인 런타임 파일로 만듭니다. -
container
-auth.conf에 대한심볼릭 링크를 생성합니다. 또한
/etc/ostree/auth.json과 연결된 심볼릭 파일도 생성합니다.Podman에는 시스템 전체 인증 정보가 없습니다. Podman은 다음 디렉터리 아래에 있는
containers-auth위치를 허용합니다.-
/run: 이 디렉터리의 내용은 재부팅 시 제거되며 필수는 아닙니다. /root: 기본적으로 로컬 변경 가능한 상태의 루트 홈 디렉터리의 일부입니다.bootc및 Podman 인증 정보를 통합하려면bootc및 Podman 모두에 대해 단일 기본 글로벌 풀 시크릿을 사용합니다. 다음 컨테이너 빌드는bootc및 Podman 자격 증명을 통합하는 예입니다. 이 예제에서는creds라는 시크릿을 빌드할 레지스트리 풀 시크릿을 포함할 것으로 예상합니다.
-
Containerfile은