2017-09-06 2 views
0

docker 실행 구문에 문제가 있습니다.이 두 가지 명령을 시도했으며 둘 다 마지막 줄에 오류 메시지를 생성하는 것으로 보입니다.docker run image diff가 제대로 실행되지 않음

docker run --rm ${DOCKER_ARGS} -i ${BUILD_IMAGE} /bin/bash -c "diff /usr/local/bin/protoc /go/bin/protoc2" 

docker run --rm ${DOCKER_ARGS} -i ${BUILD_IMAGE} diff /usr/local/bin/protoc /go/bin/protoc2 

diff: /go/bin/protoc2/protoc: No such file or directory 

구문에 어긋나는 것이 있습니까? 왜 내 명령을 제대로 실행하지 않는지 잘 모르겠습니다.

+0

가 어떤 문제가 있는지 알 수 있습니까? 컨테이너 내부에 보이지 않기 때문에 –

+0

'/ go/bin/protoc2'도 디렉토리가됩니다. –

+0

'/ go/bin/protoc2/protoc'은 존재하지 않습니다. 바이너리 인'/ go/bin/protoc2'와'/ usr/local/bin/protoc'을 비교하려고합니다./go/bin/protoc2는 -v (포함되지 않음)로 마운트되었습니다. – user3125693

답변

0
$ sudo cp /bin/ls /bin/ls2 
$ docker run --rm -v /bin/ls2:/bin/ls2 ubuntu:16.04 diff /bin/ls /bin/ls2 
Binary files /bin/ls and /bin/ls2 differ. 

로컬 마운트가 존재하지 않아 디렉토리가 생성됩니다.

docker run --rm ${DOCKER_ARGS} -i ${BUILD_IMAGE} /bin/bash -c "ls -alh /go/bin/protoc2 && diff /usr/local/bin/protoc /go/bin/protoc2" 

에 실행 문을 변경

그리고 당신은 파일`/ 호스트 또는 컨테이너 내부/빈은/protoc2/protoc` 이동은

관련 문제