Harbor
Harbor est un registre de conteneurs open source qui stocke, signe et analyse les images de conteneurs et les artefacts OCI. Il ajoute le contrôle d’accès basé sur les rôles, l’analyse des vulnérabilités et la réplication d’images à l’API de registre standard. L’interface web fonctionne sur les ports 80 et 443.
Logiciels inclus
Section intitulée « Logiciels inclus »| Composant | Version |
|---|---|
| Harbor | 2.15.0 |
| Ubuntu | 24.04 LTS |
Variables d’environnement
Section intitulée « Variables d’environnement »Définissez-les facultativement lors du déploiement depuis la marketplace. Laissez un champ vide pour qu’une valeur sécurisée soit générée.
| Variable | Description |
|---|---|
HARBOR_HOSTNAME | Nom d’hôte public de Harbor |
HARBOR_ADMIN_PASSWORD | Mot de passe administrateur Harbor |
Démarrage
Section intitulée « Démarrage »1. Se connecter à votre VM
Section intitulée « 1. Se connecter à votre VM »ssh ubuntu@<your-vm-ip>2. Attendre la configuration du premier démarrage
Section intitulée « 2. Attendre la configuration du premier démarrage »Harbor génère des identifiants uniques, prépare sa pile Docker Compose et démarre automatiquement. Cette opération peut prendre plusieurs minutes. Suivez la progression avec :
sudo journalctl -u harbor-first-boot.service -fVérifiez ensuite la pile :
cd /opt/harbor/harbor && docker compose ps3. Accéder à l’interface Harbor
Section intitulée « 3. Accéder à l’interface Harbor »Ouvrez un navigateur et accédez à :
http://<your-vm-ip>Consultez les informations de connexion générées :
sudo cat /root/.credentials/harbor.txt| Champ | Valeur |
|---|---|
| Nom d’utilisateur | admin |
| Mot de passe | Dans /root/.credentials/harbor.txt |
Gérer Harbor
Section intitulée « Gérer Harbor »Harbor fonctionne comme une pile Docker Compose dans /opt/harbor/harbor.
# Check statuscd /opt/harbor/harbor && docker compose ps
# Restartcd /opt/harbor/harbor && docker compose restart
# View logscd /opt/harbor/harbor && docker compose logs -f| Chemin | Fonction |
|---|---|
/opt/harbor/harbor/harbor.yml | Configuration principale de Harbor |
/data/harbor/ | Données du registre et de l’application |
/root/.credentials/harbor.txt | Informations de connexion et de base générées |
Si vous attachez un disque de données vierge supplémentaire avant le premier démarrage, l’image le
formate et le monte sur /data. Sans disque supplémentaire, /data/harbor utilise le système de
fichiers racine.
Sécurité
Section intitulée « Sécurité »Harbor écoute par défaut sur le port 80. UFW est activé et autorise HTTP (port 80), HTTPS (port 443) et SSH (port 22). Le port 443 est réservé à Harbor HTTPS et ne fournit aucun service TLS tant que vous ne l’avez pas activé.
Pour limiter Harbor à une adresse IP précise :
sudo ufw delete allow 80/tcpsudo ufw delete allow 443/tcpsudo ufw allow from <trusted-ip> to any port 80sudo ufw allow from <trusted-ip> to any port 443Pour accéder à l’interface sans laisser le port 80 ouvert, utilisez un tunnel SSH :
Fermez d’abord le port public sur la VM, puisqu’il est ouvert par défaut :
sudo ufw delete allow 80/tcpsudo ufw delete allow 443/tcp# Run this on your local machinessh -L 8080:localhost:80 ubuntu@<your-vm-ip>
# Then open in a browserhttp://localhost:8080Pour une utilisation en production, configurez Harbor avec un nom DNS et un certificat TLS de confiance, ou placez-le derrière un proxy inverse qui termine TLS avant que les clients ne poussent des images ou des artefacts.