Aller au contenu principal
Sommaire de la formation

Registries et Projets

coolibra296 vues

Repositories et registries

  • Registries
  • Projets
    • projet public
    • projet prive
    • proxy cache

Registries

Un registry est un service permettant de stocker, gérer et distribuer des images container et charts helm(Docker, OCI...).

  • Pour créer un registrie:
    • Connectez-vous à l’interface web Harbor avec un compte admin ou ayant les droits d’administration.

    • Allez dans le menu "Administration" > "Registres".

    • Cliquez sur "+ Nouveau registre".

    • Renseignez les champs suivants :

      • Nom : un nom lisible, ex. dockerhub-cache.

      • Type : sélectionnez le type (Docker Hub, Harbor, GitHub, Quay.io, etc.).

      • URL :

        • Pour Docker Hub : https://registry-1.docker.io

        • Pour GitHub : https://ghcr.io

        • Pour un Harbor distant : l’URL de l’instance.

    • (Optionnel) Activez l’authentification si nécessaire :

      • Cochez "Authentification"

      • Renseignez nom d'utilisateur et mot de passe (ou token pour GitHub)

    • Cliquez sur "Tester la connexion" pour vérifier que Harbor peut atteindre ce registre.

    • Cliquez sur "OK" pour enregistrer.

  • Ce registre peut être utilisé :
    • Pour synchroniser des repositories vers un projet.

    • Comme proxy cache pour un projet.

    • Pour faciliter les imports ou les pulls d’images.

 

Projets

Dans Harbor, les projets sont des espaces logiques qui regroupent des repositories (images docker et helm chart). Chaque projet dispose de sa propre configuration, de ses membres et de ses règles d’accès.

  • Projet privé
    • Accès restreint : seuls les utilisateurs explicitement autorisés peuvent accéder au contenu (pull/push).

    • C’est le mode par défaut pour des raisons de sécurité.

    • Utilisé pour des images et helm charts internes ou sensibles.

  • Projet public
    • Accès ouvert : tout utilisateur (même non authentifié) peut consulter et tirer les images.

    • Pratique pour partager des images open source ou faciliter l’usage sans configuration supplémentaire côté client.

    • Pour créer un projet public:
      • Lors de la création du projet (voir étape 1), cochez l'option "Public".

      • Si le projet existe déjà :

        • Allez dans "Projets" > [Nom du projet] > Configuration.

        • Modifiez la visibilité en choisissant "Public".

        • Cliquez sur "Enregistrer".

  • Proxy Cache
    • Permet de mettre en cache les images provenant d’un autre registry distant (ex. Docker Hub, Quay.io, etc.).

    • Réduit la latence, améliore la résilience et limite la bande passante consommée.

    • Très utile pour les environnements restreints ou soumis à des quotas réseaux.

 

    1. Pour créer un projet proxy cache
      • Allez dans "Administration" > "Registres proxy".

      • Cliquez sur "+ Nouveau registre proxy".

      • Renseignez :

        • Nom : par exemple docker-hub-cache

        • Type : Docker Hub, Quay.io, etc.

        • URL du registre source : ex. https://registry-1.docker.io

      • Authentification (si nécessaire) : clé ou utilisateur/mot de passe.

      • Cliquez sur "Tester la connexion".

      • Cliquez sur "OK" pour enregistrer.

      • Dans un projet, activez le mode proxy cache :

        • Allez dans le projet > Configuration.

        • Activez le mode proxy cache et associez le proxy créé.

        • Definir une bande passante 
        • Cliquez sur "Enregistrer".

 

Créer un Repository

Les repositories sont créés automatiquement lors du push d’une image depuis Docker ou Podman :

docker pull nginx:latest
docker tag nginx:latest 10.10.10.162/techledger_dev/front/web-app:1.0

# login avec un user ou un robot account
docker login 10.10.10.162

docker push 10.10.10.162/techledger_dev/front/web-app:1.0

Une fois le push effectué, le repository front/web-app apparaîtra sous le projet techledger_dev.

 Pour le proxy cahe, il faut :

docker login 10.10.10.162
docker pull 10.10.10.162/docker_hub_proxy/nginx:stable-perl
docker pull 10.10.10.162/docker_hub_proxy/phpipam/phpipam-www:nightly

# tester
docker pull 10.10.10.162/docker_hub_proxy/nginx:stable-perl
docker run 10.10.10.162/docker_hub_proxy/nginx:stable-perl

 

Le proxy cache prend quelques minutes avant d'apparaitre dans l'ui harbor. Mais on voit bien l'utilisation du quota.

 

 

Commentaires

Connectez-vous pour rejoindre la discussion.

Aucun commentaire pour le moment.