Gestion des Projets, configuration initiale et labels
Gestion des Projets, configuration initiale et labels
-
Création et gestion de projets
- Création de projets.
- Configuration initiale et vérification du fonctionnement.
- Labels pour organiser et retrouver les images.
- Gestion des droits d'accès aux projets.
1. Création de projets
-
- Sur l'ui de harbor, clic sur > project > select library > action > supprimer
- Créer un nouveau projet: clic sur projet > nouveau projet

2. Configuration initiale et vérification du fonctionnement
-
- Une fois le projet créé, on clic sur le nom pour avoir plus d'options de configuration

-
- Project registry
-
Public : si coché, tous les utilisateurs (même non authentifiés) peuvent accéder aux images de ce projet.
-
Par défaut : un projet est privé, accessible uniquement aux membres autorisés.
-
- Proxy Cache
-
Permet à ce projet de fonctionner comme cache pull-through pour un registre distant (DockerHub, Quay, GitHub GHCR, etc.).
-
Utile pour éviter de re-puller les mêmes images du registre externe → performance + réduction de bande passante.
-
- Deployment Security
-
Cosign ou Notation(notary) : active la vérification de signature d’image (via Cosign ou Notation).
-
Ces outils garantissent que les images ont été signées par des éditeurs de confiance.
-
-
Prevent vulnerable images from running :
-
Empêche le déploiement d’images contenant des vulnérabilités.
-
Un niveau de sévérité est sélectionnable (ex. : Low, Medium, High, Critical).
-
Les images au-dessus de ce seuil sont bloquées.
-
-
- Vulnerability scanning
-
Automatically scan images on push :
-
Dès qu’une image est poussée dans le registre, un scan de vulnérabilités CVE est lancé automatiquement (si un scanner est configuré, comme Trivy ou Clair).
-
-
- SBOM Generation (Software Bill of Materials)
-
Automatically generate SBOM on push :
-
Génère une liste détaillée des composants logiciels (librairies, dépendances, etc.) inclus dans une image.
-
Très utile pour la traçabilité et la conformité (ex : audits, normes ISO/SOC2).
-
-
- CVE Allowlist
-
Permet de tolérer certaines vulnérabilités connues (CVE) pour un projet spécifique.
-
Deux options :
-
System allowlist : liste globale définie au niveau de l’instance Harbor.
-
Project allowlist : personnalisée uniquement pour ce projet.
-
-
-
On peut ajouter des CVE manuellement ou les copier depuis la configuration système.
-
"Expires at" permet de définir une date d’expiration pour les CVE tolérées.
- Project registry
- Labels pour organiser et retrouver les images.
Dans Harbor, les labels sont un mécanisme de classification qui permet d’organiser, filtrer, rechercher et gérer les images de conteneurs (et les artefacts comme les charts Helm ou les SBOM) de façon plus efficace.
Un label est une étiquette personnalisable sous forme de clé/valeur ou simplement de nom, que tu peux associer à :
-
-
Une image Docker
-
Un artefact OCI
-
Un chart Helm
-
Voici quelques exemples concrets :
| Label | Signification |
|---|---|
| env:prod | Image destinée à la production |
| env:dev | Image utilisée en environnement de développement |
| team:backend | Image maintenue par l'équipe backend |
| compliance:ok | Image validée pour les audits sécurité |
| build:20240531 | Image issue du build du 31 mai 2025 |
-
Organisation : Classement logique par environnement, équipe, version, etc.
-
Recherche : Tu peux filtrer les images dans l’interface Harbor via les labels.
-
Automatisation CI/CD :
-
Les labels permettent aux outils (ex : GitLab CI, ArgoCD, etc.) de cibler certaines images.
-
Ex. : déployer uniquement les images avec env:staging.
-
-
Sécurité et conformité : Ajouter un label compliance:ok ou scan:passed après un scan de vulnérabilité validé.
- Créer et gérer les labels
-
-
Labels globaux :
-
Gérés depuis le menu "Labels" dans Harbor (accessible en tant qu’admin système).
-
Applicables à tous les projets.
-
-
Labels de projet :
-
Créés depuis l’onglet "Labels" d’un projet spécifique.
-
Utilisables uniquement dans ce projet.
-
-
Association à une image :
-
Depuis l’onglet "Repositories" → clique sur une image → Manage Labels.
-
On peut aussi les appliquer via l’API Harbor ou terraform.
-
-

- Tag une image image de l'ajouter dans le projet techleder_dev
Par defaut docker login n'accepte pas http il faut https. Pour nos premiers tests, on va ajouter cette conf de docker sur votre laptop d'admin.
sudo tee /etc/docker/daemon.json << EOF
{
"insecure-registries": ["10.10.10.162", "10.10.10.162:80"]
}
EOF
-
- Rédemarrer docker service
sudo systemctl restart docker
-
- Relancer harbor
docker compose up -d
docker compose ps
-
- Une fois les containers harbor sont tous running, on peut faire maintenant docker login harbor_ip
- user: admin
- mot de passe: harbor_admin_password que vous avez renseigné dans le fichier harbor.yml
- Une fois les containers harbor sont tous running, on peut faire maintenant docker login harbor_ip
docker login 10.10.10.162

-
- Tag nginx:latest et push sur haarbor
docker pull nginx:latest
docker tag nginx:latest 10.10.10.162/techleder_dev/web-ui:0.0.1
docker push 10.10.10.162/techleder_dev/web-ui:0.0.1


-
- Pour ajouter un label sur l'image: projects > clic sur le projet > select artifact > actions > add labels > select lables

Commentaires
Aucun commentaire pour le moment.