Extraction d'images à l'aide de l'interface de ligne de commande Docker

Découvrez comment extraire des images du registre de conteneurs à l'aide de l'interface de ligne de commande Docker.

Vous utilisez l'interface de ligne de commande Docker pour extraire des images d'Oracle Cloud Infrastructure Registry (également appelé Registre de conteneurs).

Vos autorisations contrôlent les images que vous pouvez extraire du registre de conteneurs (voir Politiques pour contrôler l'accès aux référentiels). Vous pouvez extraire des images des référentiels que vous avez créés, des référentiels publics et des référentiels auxquels les groupes dont vous êtes membre sont autorisés à accéder par des politiques de gestion des identités. Si vous êtes membre du groupe Administrateurs, vous pouvez extraire des images de tout référentiel de la location.

Note

Container Registry est un registre conforme à Open Container Initiative. Par conséquent, vous pouvez stocker tous les artefacts conformes aux spécifications Open Container Initiative, tels que les images Docker, les listes de manifestes (parfois appelées images à architecture multiple) et les graphiques Helm. Les instructions de cette rubrique supposent que vous stockez des images Docker et que vous utilisez l'interface de ligne de commande Docker.

Pour extraire des images du registre de conteneurs à l'aide de l'interface de ligne de commande Docker :

  1. Si vous avez déjà un jeton d'authentification, passez à l'étape suivante. Sinon :

    1. Dans l'angle supérieur droit de la console, ouvrez le menu Profil Icône du menu Profil, puis sélectionnez Paramètres de l'utilisateur (ou Mon profil ou le nom de votre compte) pour afficher les détails.

    2. Dans la page Jetons d'authentification, sélectionnez Générer un jeton.

    3. Entrez une description conviviale pour le jeton d'authentification. Évitez d'entrer des informations confidentielles.

    4. Sélectionnez Générer un jeton. Le nouveau jeton d'authentification s'affiche.

    5. Copiez le jeton d'authentification immédiatement vers un emplacement sécurisé à partir duquel vous pourrez l'extraire ultérieurement, car vous ne le verrez pas de nouveau dans la console.

    6. Fermez la boîte de dialogue Générer un jeton.

  2. Dans une fenêtre de terminal sur l'ordinateur client exécutant Docker, connectez-vous au registre de conteneurs en entrant docker login <registry-domain>, où <registry-domain> inclut une clé de région ou un identificateur de région pour la région du registre de conteneurs que vous utilisez. Par exemple, docker login ocir.us-ashburn-1.oci.oraclecloud.com. Voir Disponibilité par région.

  3. Lorsque vous êtes invité à entrer un nom d'utilisateur, entrez-le dans le format <tenancy-namespace>/<username>, où <tenancy-namespace> est la chaîne d'espace de noms du stockage d'objets générée automatiquement de votre location (présentée dans la page des informations sur la location). Par exemple, ansh81vru1zp/jdoe@acme.com.

    Si votre location est fédérée avec Oracle Identity Cloud Service, utilisez le format <tenancy-namespace>/<domain-name>/<username>. Pour les utilisateurs fédérés, <domain-name>/<username> s'affiche dans le menu Profil Icône du menu Profil de la console. Par exemple, si la chaîne d'espace de noms de votre location est ansh81vru1zp et que votre location est fédérée avec Oracle Identity Cloud Service, et que votre nom d'utilisateur est jdoe@acme.com, entrez ansh81vru1zp/oracleidentitycloudservice/jdoe@acme.com.

  4. Lorsque vous êtes invité à entrer un mot de passe, entrez le jeton d'authentification copié précédemment.

  5. Extrayez l'image Docker du registre de conteneurs sur l'ordinateur client en entrant :

    docker pull <registry-domain>/<tenancy-namespace>/<repo-name>:<version>

    où :

    • <registry-domain> inclut la clé de région ou l'identificateur de région pour la région du registre de conteneurs que vous utilisez. Par exemple : ocir.us-ashburn-1.oci.oraclecloud.com. Voir Domaine de registre.

    • <tenancy-namespace> est la chaîne d'espace de noms du stockage d'objets générée automatiquement de la location qui détient le référentiel duquel vous voulez extraire l'image (présentée sur la page des informations sur la location). Par exemple, l'espace de noms de la location acme-dev pourrait être ansh81vru1zp. Notez que, pour certaines locations plus anciennes, la chaîne d'espace de noms peut être identique au nom de la location, tout en minuscules (par exemple, acme-dev). Notez également que votre utilisateur doit avoir accès à la location.

    • <repo-name> est le nom d'un référentiel à partir duquel vous voulez extraire l'image (par exemple, project01/acme-web-app). Notez que votre utilisateur doit avoir accès au référentiel (voir Référentiels).

    • <version> est l'identificateur de version de l'image à extraire du registre de conteneurs (par exemple, v2.0.test).

    Par exemple :

    docker pull ocir.us-ashburn-1.oci.oraclecloud.com/ansh81vru1zp/project01/acme-web-app:v2.0.test

    Notez que si vous ne spécifiez pas <version> dans la commande docker pull, Docker extrait l'image qui a l'identificateur de version latest.

  6. Vérifiez que l'image a été extraite du registre de conteneurs en entrant docker images et vérifiez que la liste des images sur l'ordinateur client comprend désormais l'image que vous venez d'extraire.

    Par exemple :

    
    $ docker images
    REPOSITORY                                                                TAG                   IMAGE ID      CREATED       SIZE
    ocir.us-ashburn-1.oci.oraclecloud.com/ansh81vru1zp/project01/acme-web-app v2.0.test             8e0506e14874  1 minute ago  162.6 MB
    acme-web-app                                                              latest                8e0506e14874  2 hours ago   162.6 MB
    acme-web-app                                                              v1.0                  7d9495d03763  2 hours ago   162.6 MB
    <none>                                                                    <none>                6ebd328f833d  5 hours ago   162.6 MB
    hello-world                                                               latest                80b84820d442  5 weeks ago   890 B