GoLang HTTP.Client가 포함된 Docker 컨테이너에서 인증 기관 오류가 발생함
개인이 Google API와 통신하려고 시도하면서 Docker를 구성했습니다. GoLang을 활용하는 컨테이너입니다. 처음에는 SCRATCH 컨테이너를 사용하여 "알 수 없는 기관에서 서명한 인증서"라는 오류가 발생했습니다. ubuntu/alpine으로 전환해도 오류가 지속됩니다.
컨테이너 내에 신뢰할 수 있는 인증서가 없기 때문에 문제가 발생합니다. 이 문제를 해결하기 위해 두 가지 접근 방식을 채택할 수 있습니다.
스크래치 이미지
애플리케이션과 함께 신뢰할 수 있는 인증서를 통합합니다.
FROM scratch ADD ca-certificates.crt /etc/ssl/certs/ ADD main / CMD ["/main"]
다단계 구축
제공되는 인증서 활용 배포 공급업체:
FROM golang:alpine as build RUN apk --no-cache add ca-certificates WORKDIR /go/src/app COPY . . RUN CGO_ENABLED=0 go-wrapper install -ldflags '-extldflags "-static"' FROM scratch COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ COPY --from=build /go/bin/app /app ENTRYPOINT ["/app"]
이러한 방법을 사용하면 컨테이너가 필수 인증서를 보유하게 되어 Google API와 원활하게 통신할 수 있습니다.
위 내용은 Docker 컨테이너에서 GoLang의 HTTP.Client를 사용할 때 '알 수 없는 기관에서 서명한 인증서' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!