>백엔드 개발 >Golang >Kubernetes에 배포된 Go 애플리케이션에 시간대 데이터베이스를 포함하는 방법은 무엇입니까?

Kubernetes에 배포된 Go 애플리케이션에 시간대 데이터베이스를 포함하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-28 22:15:18631검색

How to Embed the Timezone Database in a Go Application Deployed to Kubernetes?

Zoneinfo.zip을 바이너리에 포함

"open C:Go/lib/time/zoneinfo.zip: no such" 오류 발생 Kubernetes Engine에 컨테이너 애플리케이션을 배포하는 동안 '파일 또는 디렉터리' 오류가 발생하면 시간대 데이터베이스가 누락되었음을 나타낼 수 있습니다.

해결 방법 이 문제는 다음 접근 방식을 고려하십시오.

내장된 tzdata 패키지(Go 1.15 이상)

Go 1.15에서는 시간대 데이터베이스를 내장할 수 있는 time/tzdata 패키지를 도입했습니다. 프로그램.

import _ "time/tzdata"

또는 다음을 사용하여 구축할 수도 있습니다. -tags timetzdata.

두 방법 모두 프로그램 크기를 약 800KB만큼 늘립니다. 이렇게 하면 Kubernetes Engine에서 데이터베이스를 사용할 수 없는 경우에도 프로그램이 시간대 정보에 액세스할 수 있습니다.

주의 사항:

고인돌이 언급한 대로 이 솔루션은 시간대 정보를 연결합니다. 버전을 빌드에 사용되는 Go 버전으로 변경합니다. Go 버전을 업데이트해도 시간대 정보는 업데이트되지 않습니다. Go 버전과 별도로 시간대 정보를 업데이트하는 것이 더 바람직할 수 있습니다.

위 내용은 Kubernetes에 배포된 Go 애플리케이션에 시간대 데이터베이스를 포함하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.