2016-08-05 5 views
0

아래 파일로 Docker 이미지를 빌드 중입니다. 그것은 간단한 봄 부팅 애플 리케이션이다. Spring 프로젝트를 업데이트 할 때 이미지를 다시 작성하여 업데이트 된 이미지를 얻으려고합니다. 그러나 완전히 새로운 이미지가 생성되어 전체적으로 repo까지 완전히 다시 푸시됩니다 (700MB 이상). 완전히 새로운 이미지 대신 새로 업데이트 된 jar를 포함하도록 기존 이미지를 업데이트하여 Spring 앱을 업데이트하기 위해 700 MB를 밀어 올릴 필요가없는 방법은 무엇입니까?docker 이미지에서 jar 업데이트

FROM java:8 
EXPOSE 8080 
VOLUME /tmp 
ADD app-name.1.0.jar app.jar 
RUN bash -c 'touch /app.jar' 
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","app.jar"] 

참고 : 나는 고정 표시기가 명령을 첨부 실행하면, 그냥 거기에 앉아 아무것도하지 않습니다

내가 현재 사용하고있는 dockerfile입니다.

답변

1

도커 컨테이너/이미지를 놓친 것처럼 보입니다. 새 앱 버전 ==> 새로운 Docker 이미지은 올바른 경로이며 원하는 것으로 들립니다.

마지막으로 레이어가 변경된 경우 (제공 한 Dockerfile의 경우) 도커 밀어 넣기은 이미지의 새 레이어 만 업로드합니다. 그래서이 경우에 app.jar의 크기에 관한 내용 ...

+0

위대한, 그게 그 것이다. 나는 같은 버전 번호로 다시 빌드하는 대신 버전 번호를 부딪쳤다. 결과적으로, 그것은 특정 레이어를 밀어 올렸을 뿐이며 모든 레이어를 다시 밀어 붙이지는 않았습니다. 감사! –

관련 문제