20.4. buildah 복사 및 buildah 구성을 사용하여 컨테이너 수정
buildah 복사
명령을 사용하여 마운트하지 않고 파일을 컨테이너로 복사합니다. 그런 다음 buildah config
명령을 사용하여 컨테이너를 구성하여 기본적으로 생성한 스크립트를 실행할 수 있습니다.
사전 요구 사항
-
container-tools
모듈이 설치되어 있습니다. - Containerfile의 지침을 사용하여 빌드된 이미지. 자세한 내용은 Buildah를 사용하여 Containerfile에서 이미지 빌드 섹션을 참조하십시오.
절차
newecho
라는 스크립트를 생성하고 이를 실행 가능하게 만듭니다.cat newecho echo "I changed this container" chmod 755 newecho
# cat newecho echo "I changed this container" # chmod 755 newecho
Copy to Clipboard Copied! 새 작업 컨테이너를 생성합니다.
buildah from myecho:latest
# buildah from myecho:latest myecho-working-container-2
Copy to Clipboard Copied! newecho 스크립트를 컨테이너 내부의
/usr/local/bin
디렉토리에 복사합니다.buildah copy myecho-working-container-2 newecho /usr/local/bin
# buildah copy myecho-working-container-2 newecho /usr/local/bin
Copy to Clipboard Copied! new
echo 스크립트를 새
진입점으로 사용하도록 구성을 변경합니다.buildah config --entrypoint "/bin/sh -c /usr/local/bin/newecho" myecho-working-container-2
# buildah config --entrypoint "/bin/sh -c /usr/local/bin/newecho" myecho-working-container-2
Copy to Clipboard Copied! 선택 사항:
myecho-working-container-2
컨테이너를 실행하면newecho
스크립트가 실행됩니다.buildah run myecho-working-container-2 -- sh -c '/usr/local/bin/newecho'
# buildah run myecho-working-container-2 -- sh -c '/usr/local/bin/newecho' I changed this container
Copy to Clipboard Copied! myecho-working-container-2
컨테이너를mynewecho
라는 새 이미지에 커밋합니다:buildah commit myecho-working-container-2 containers-storage:mynewecho
# buildah commit myecho-working-container-2 containers-storage:mynewecho
Copy to Clipboard Copied!
검증
로컬 스토리지의 모든 이미지를 나열합니다.
buildah images
# buildah images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/library/mynewecho latest fa2091a7d8b6 8 seconds ago 234 MB
Copy to Clipboard Copied!