2017-10-05 1 views
0

Dockerfile을 사용하지 않고도 tutorial을 사용하여 몇 주 전에 이미지를 만들었습니다.Dockerfile을 사용하지 않고 도커 이미지 크기 줄이기

기본적으로 이미지에서 컨테이너를 실행하고이 컨테이너를 편집 한 다음 새 이미지로 저장하고 종료하고 커밋 및 푸시합니다. 처음에는 이미지가 다소 크기가 적당했지만 이제는 이해할 수없는 방식으로 커집니다. 예를 들어

, 난 내 이미지를 편집해야하는 경우, 내가 것이다 : 뭔가 구성

  • docker run --name mycontainer -it from/currentimage bash
  • 편집 파일이나
  • 종료
  • docker commit from/currentimage
  • docker push from/currentimage

T 문제는 파일의 라인을 변경하면 이미지 크기가 250MB 가량 커집니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

거기에서, 내가 생각하기에 쓸모없는 레이어에서 어떻게 그 크기를 줄일 수 있습니까? 그래서 다른 답변은 항상 Dockerfile을 사용하거나 재구성합니다. 내 경우에는 하나도 없어.

감사합니다.

답변

1

이미지가 예상보다 빨리 커지는 이유를 말할 수 없습니다. 당신은 이미지의 크기를 줄일 수있는,하지만 레이어를 평평하게하기 위해 내보내기/가져 오기 메커니즘을 사용할 수 있습니다 :

docker create --name foo from/currentimage 
docker export foo | docker import - from/currentimage:flat 
docker rm foo 

docker inspect from/currentimage:flat는 이제 하나의 레이어를 표시해야한다.

+0

좋은 시작 인 ~ ~ 1Go 했어. 내가 이것을 "합쳐서"최신의 것으로 합칠 수 있습니까? (나는 그것을 시도했다) 나는 그것들을 구별 할 필요가있는 것처럼 보인다. – Pobe

+0

물론, "from/currentimage : latest"로 태그를 지정하면됩니다. 나는 대답에 그것을 넣고 싶지 않았기 때문에 실수로 기존 이미지를 덮어 쓰지 않습니다. – Peter

관련 문제