> 백엔드 개발 > Golang > Alpine Docker 이미지에서 '버전 이동'이 실패하는 이유는 무엇입니까?

Alpine Docker 이미지에서 '버전 이동'이 실패하는 이유는 무엇입니까?

DDD
풀어 주다: 2024-11-26 00:29:10
원래의
645명이 탐색했습니다.

Why does

Alpine Linux Docker 이미지에 Go 설치: 경로 문제

Alpine Docker 이미지 내에 Go를 설치하려고 하면 오류( "sh: go: notfound")는 "go version" 명령을 실행하면 나타납니다. 이 문제는 잘못된 PATH 변수 설정으로 인해 발생합니다.

이 문제를 해결하려면 아래와 같이 Go 바이너리가 있는 디렉터리를 포함하도록 PATH 변수를 설정하는 것이 올바른 접근 방식입니다.

export PATH=/usr/local/go/bin:$PATH
로그인 후 복사
로그인 후 복사

오류를 재현하기 위해 제공된 단계에서 PATH 변수는 잘못된 디렉토리(Go 바이너리를 포함하지 않는 /usr/local/go/)를 포함하도록 설정되었으며 다음으로 수정되었습니다.

export PATH=/usr/local/go/bin:$PATH
로그인 후 복사
로그인 후 복사

또는 다단계 빌드를 사용하여 이 문제를 해결할 수 있습니다. 다음은 다단계 빌드의 예입니다.

FROM XXX  # Your base image
FROM golang:1.13-alpine
COPY --from=golang:1.13-alpine /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"
로그인 후 복사

이 다단계 빌드는 golang:1.13-alpine 이미지의 Go 설치를 최종 이미지에 복사하여 PATH 변수가 올바르게 설정되었는지 확인합니다.

위 내용은 Alpine Docker 이미지에서 '버전 이동'이 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿