web-dev-qa-db-fra.com

Docker - Comment supprimer une image d'un registre privé

Il n'y a pas encore de bonne réponse à " Comment supprimer une image d'un registre privé " dans Docker.

J'ai déjà essayé ce qui suit:
Impossible de supprimer l'image Docker du registre
Comment supprimer des images d'un registre de docker privé?
Comment "supprimer" une image d'un Docker Registry privé?
Mais rien de ce qui précède ne semble fonctionner.

Comme tout le monde, j'ai déjà essayé:

DELETE /v2/orassayag/osr_streamer_nginx/manifests/sha256:051adb935bff30abba811fd64da28a5f3b19a48f07c74b067e3bd61ab91152b5 HTTP/1.1

ET

DELETE /v2/orassayag/osr_streamer_nginx/manifests/051adb935bff30abba811fd64da28a5f3b19a48f07c74b067e3bd61ab91152b5 HTTP/1.1

et obtenez à chaque fois:

{"errors":[{"code":"UNSUPPORTED","message":"The operation is unsupported."}]}


Quelqu'un a réussi dans ce domaine?

Mettre à jour:
Aucune des solutions dans les liens que j'ai fournis ne fonctionne et obtient toujours une erreur "non prise en charge".

6
OrAssayag

Ceci est un script python supprimer toutes les images dans le registre privé, cela fonctionne sur mon registre privé.

import requests
for repo in requests.get('https://192.168.2.31:5000/v2/_catalog', verify=False).json()['repositories']:
    headers = requests.get('https://192.168.2.31:5000/v2/%s/manifests/v1' % repo, headers = {'Accept': 'application/vnd.docker.distribution.manifest.v2+json'}, verify=False).headers
    if 'Docker-Content-Digest' in headers:
        requests.delete('https://192.168.2.31:5000/v2/%s/manifests/%s' % (repo, headers['Docker-Content-Digest']), verify=False)
1
wei li