Maison  >  Article  >  développement back-end  >  Comment corriger les erreurs « aucun fichier ou répertoire de ce type » zoneinfo.zip dans les applications Go Dockerisées ?

Comment corriger les erreurs « aucun fichier ou répertoire de ce type » zoneinfo.zip dans les applications Go Dockerisées ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-24 02:42:09818parcourir

How to Fix

Résolution des erreurs de fuseau horaire dans les applications Go Dockerisées

Lors du déploiement d'une application conteneur Docker sur un moteur Kubernetes, une erreur indiquant "aucun fichier ou répertoire de ce type" par rapport à zoneinfo .zip peut apparaître.

Cause :

Ceci L'erreur provient de l'absence du fichier d'informations de fuseau horaire (zoneinfo.zip) sur le conteneur déployé.

Solution :

Pour intégrer la base de données de fuseau horaire dans l'application Go et éliminez le besoin d'un accès externe, considérez les éléments suivants :

Utilisation de Go 1.15 ou Plus tard :

  • Importez le package time/tzdata ou construisez avec -tags timetzdata.
  • Cette action intègre la base de données de fuseau horaire dans le programme, augmentant sa taille d'environ 800 KB.

Avertissement :

L'intégration des données de fuseau horaire dans l'application limite les mises à jour de la version des informations de fuseau horaire en fonction de la version Go utilisée pour la construction.

Solution alternative (recommandée) :

Pour conserver la possibilité de mettre à jour informations de fuseau horaire indépendamment de la version Go, pensez à :

  • Inclure le fichier zoneinfo.zip dans l'image Docker.
  • Ajouter une commande au Dockerfile pour télécharger et extraire la base de données de fuseau horaire pendant création d'image.
  • Par exemple :
RUN set -x \
   && curl -sSL http://mirrors.gigenet.com/pub/timezone/data/latest/zoneinfo.zip \
   && unzip -p zoneinfo.zip > /usr/share/zoneinfo.zip 

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn