Docker 용 기본 이미지를 어떻게 만들 수 있습니까?
Docker 문서 에 따르면 자체 이미지를 빌드하려면 항상 FROM
지침을 사용하여 기본 이미지를 지정해야합니다 .
당연히 Docker index 에서 선택할 수있는 이미지가 많이 있지만 직접 만들고 싶다면 어떻게해야합니까? 가능합니까?
base
올바르게 이해하면 이미지 가 Ubuntu에서 빌드되고 Debian 이미지로 실험하고 싶습니다. 또한 Docker가 어떻게 작동하는지 정말로 이해하고 싶고 base
이미지는 여전히 저에게 블랙 박스입니다.
편집 : 기본 이미지 생성에 대한 공식 문서
기본 이미지가 생성되고 거기에서 이동하는 방법을 볼 수 있습니다.
https://github.com/dotcloud/docker/tree/master/contrib에서 찾을 수 있습니다 . mkimage-busybox.sh, mkimage-unittest.sh, mkimage-debian.sh가 있습니다.
Solomon Hykes 인용 :
"docker import"를 사용하여 모든 tarball에서 새 컨테이너를 쉽게 만들 수 있습니다. 예를 들면 :
debootstrap raring ./rootfs tar -C ./rootfs -c . | docker import - flimm/mybase
(fatherlinux에 대한 크레딧) http://developerblog.redhat.com/2014/05/15/practical-introduction-to-docker-containers/ 에서 정보를 얻으십시오.
파일 시스템에 대한 tar 파일을 만듭니다.
tar --numeric-owner --exclude=/proc --exclude=/sys -cvf centos6-base.tar /
로컬에 설치되지 않은 경우 다른 고정 표시기 시스템에 tar 파일을 전송하고
import
그것을cat centos6-base.tar | docker import - centos6-base
이제 실행하여 확인할 수 있습니다.
docker run -i -t centos6-base cat /etc/redhat-release
dotcloud 의 스크립트 는 처음 두 단계를 결합하여 처음에는 혼란스럽고 복잡해 보입니다.
도커 공식 가이드 라인을 사용하여 debootstrap
깨끗한 파일 시스템을 만들려고합니다.
1 단계를 수행하는 방법을 스스로 판단 할 수 있습니다.
처음부터 자신의 이미지 빌드를 시작하려면 이미지를 사용할 수 있습니다 scratch
.
스크래치 "이미지"를 사용하면 Dockerfile의 다음 명령이 이미지의 첫 번째 파일 시스템 계층이되기를 원하는 빌드 프로세스에 신호를 보냅니다.
FROM scratch
ADD hello /
CMD ["/hello"]
http://docs.docker.com/engine/articles/baseimages/#creating-a-simple-base-image-using-scratch
자신 만의 기본 이미지를 만들고 싶다면 먼저 공식 이미지 , 특히 stackbrew
해당 저장소 내부를 살펴 보겠습니다 .
그렇지 않으면 docker repo 자체 에 최소 OS 이미지에 대한 훌륭한 참조가 있습니다.
예를 들어 여기 에 최소한의 아치 이미지를 만들기 위한 스크립트 가 있으며 여기 에 더 있습니다 .
참고 URL : https://stackoverflow.com/questions/18274088/how-can-i-make-my-own-base-image-for-docker
'code' 카테고리의 다른 글
hg outgoing (hg out) 또는 hg incoming (hg in)에 해당하는 git은 무엇입니까? (0) | 2020.09.10 |
---|---|
정렬 순서가 지정되지 않은 경우 MongoDB는 레코드를 어떻게 정렬합니까? (0) | 2020.09.10 |
Visual Studio 프로젝트가 비어 있습니까? (0) | 2020.09.10 |
iTunes Connect의 "버전 번호", Xcode의 "번들 버전", "번들 버전 문자열"의 차이점은 무엇입니까? (0) | 2020.09.09 |
신속하게 선택적 폐쇄를 만드는 방법은 무엇입니까? (0) | 2020.09.09 |