Docker Scratch Image: Resolved에서 "해당 파일 또는 디렉터리가 없습니다." 바이너리를 실행할 때 "그러한 파일이나 디렉터리"가 발생합니다. 이 오류는 이미지에 존재하지 않는 라이브러리에 바이너리가 동적으로 연결되어 있는 경우가 많습니다.
이 문제를 해결하려면 CGO(C Go)를 비활성화하세요.CGO 링크 스크래치 이미지에 문제가 발생할 수 있는 시스템 라이브러리에 적용됩니다. CGO를 비활성화하면 바이너리가 정적으로 링크되고 외부 라이브러리에 의존하지 않는지 확인할 수 있습니다.
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \ -ldflags="-w -s" -o $PROJ_BIN_PATH ./cmd/...또한 ldd를 사용하여 바이너리의 동적 링크를 확인할 수 있습니다.
이것은 명령은 바이너리가 연결된 모든 라이브러리를 나열합니다. ldd가 "동적 실행 파일이 아님"을 반환하면 바이너리는 정적으로 링크됩니다.
위 내용은 Docker Scratch Images and Go에서 '해당 파일 또는 디렉터리 없음' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!