4
votes

Registre local de Docker Windows: état HTTP inattendu reçu: erreur de serveur interne 500

J'essaie de pousser une image d'un conteneur Windows vers un référentiel "local" sur une VM Windows, qui a sa propre adresse IP.

Ainsi, lorsque je crée le registre sur ma VM, je peux afficher la liste des référentiels sur ma machine locale en accédant à l'adresse ip: 5000 très bien.

Cependant, lorsque j'essaie de pousser une image vers le registre, elle montre les couches à pousser, mais en bas, elle indique un statut HTTP inattendu: 500 Erreur de serveur interne.

Ce n'est pas un problème lorsque je passe aux conteneurs Linux. Je peux pousser et tirer du registre sans problème.


0 commentaires

3 Réponses :


2
votes

Vous devez autoriser les artefacts non distribuables en définissant l'option " allow-nondistributable-artifacts " dans le fichier JSON de configuration du démon.

Pour Linux: créez ou mettez à jour le fichier JSON du démon docker avec l'option ci-dessus dans /etc/docker/daemon.json

Pour les fenêtres:

  1. Faites un clic droit sur l'icône Docker dans la barre d'état système et sélectionnez les paramètres
  2. Sélectionnez l'onglet Daemon
  3. Activer l' option avancée (si désactivée)
  4. Ajoutez l'option allow-nondistributable-artifacts dans le JSON comme:

    {
        "registry-mirrors": [],
        "insecure-registries": [],
        "debug": true,
        "experimental": true,
        "allow-nondistributable-artifacts": [
            "localhost:5000"
        ]
    }
    
  5. Remplacez localhost par le nom de votre propre nom de serveur.

  6. Sinon, le fichier daemon.json se trouve sous C:\ProgramData\Docker\config\daemon.json

Remarque : Si vous avez d'autres paramètres, UNIQUEMENT allow-nondistributable-artifacts est important / obligatoire.


0 commentaires

-1
votes

Cela peut être dû à une erreur sur le serveur distant (ou serveur local) sur lequel vous souhaitez pousser votre image. Dans mon cas, c'était un problème d'espace disque qui a été jeté comme une erreur de serveur 500. Le problème doit être vérifié sur le serveur sur lequel l'image est poussée.

Toutes vos images ont été poussées sauf quelques-unes car toutes les autres étaient déjà poussées et celles qui étaient nouvelles ont échoué.


0 commentaires

0
votes

Pour moi, le problème était que notre registre était plein. Je l'ai vidé et cela a fonctionné.


0 commentaires