Dockerfile 빌드-오류를 무시할 수 있습니까?
Dockerfile이 있습니다. 이미지를 빌드 할 때 다음 오류로 인해 빌드가 실패합니다.
automake: error: no 'Makefile.am' found for any configure output
Error build: The command [/bin/sh -c aclocal && autoconf && automake -a] returned a non-zero code: 1
실제로는 무해합니다. 라이브러리는 정상적으로 빌드되지만 Docker는이 오류를 수신하면 빌드를 중지합니다. Docker에게 이것을 무시하도록 지시 할 수있는 방법이 있습니까?
확실한. Docker는 .NET Framework의 RUN
셸 스크립트에서 반환 된 오류 코드에 응답 합니다 Dockerfile
. 귀하의 경우 Dockerfile
뭔가를 같이있다 :
RUN make
다음으로 바꿀 수 있습니다.
RUN make; exit 0
이것은 항상 0
(성공) 종료 코드를 반환합니다 . 여기서 단점 은 빌드 프로세스에 실제 오류 가 있어도 이미지가 성공적으로 빌드 된 것처럼 보인다는 것 입니다.
이것은 이미지의 잠재적 오류 가 눈에 띄지 않거나 기록 될만큼 무해하지 않은 사람들에게 흥미로울 수 있습니다 . (또한 댓글을 작성할 담당자가 충분하지 않으므로 여기에 답변을드립니다.)
지적했듯이의 단점은 RUN make; exit 0
빌드가 실패했는지 알 수 없다는 것입니다. 따라서 다음과 같이 사용하십시오.
make test 2>&1 > /where/ever/make.log || echo "There were failing tests!"
이와 같이 도커 이미지 빌드 프로세스 로그를 통해 알림을 받고 정확히 make
무엇이 잘못되었는지 확인할 수 있습니다 (또는 다른 실행이 수행되는 데 제한되지 않음).
표준 bash ignore error를 사용할 수도 있습니다. || true
이는 체인 중간에있는 경우 좋습니다.
RUN <first stage> && <job that might fail> || true && <next stage>
참고 URL : https://stackoverflow.com/questions/30716937/dockerfile-build-possible-to-ignore-error
'Programing' 카테고리의 다른 글
Sourcetree-최신 버전으로 업그레이드, git-flow 누락 (0) | 2020.09.15 |
---|---|
루프의 어느 지점에서 정수 오버플로가 정의되지 않은 동작이됩니까? (0) | 2020.09.15 |
JavaScript의 익명 함수에 대한 removeEventListener (0) | 2020.09.15 |
jQuery UI에서 disableSelection이 사용되는 것은 무엇입니까? (0) | 2020.09.14 |
Mongoose에 스키마와 모델이 모두있는 이유는 무엇입니까? (0) | 2020.09.14 |