Registre principal : GitHub Container Registry
Le registreghcr.io est la source de vérité pour toutes les images déployées en production.
Se connecter à ghcr.io
Pour pousser ou tirer des images depuis votre poste de développement, utilisez un Personal Access Token (PAT) GitHub avec le scopewrite:packages :
Images typiques hébergées
Registre secondaire : GitLab interne
Le serveur d’outillage héberge un registre Docker GitLab accessible en interne.- Images d’outillage interne (SonarQube scanners, runners CI custom)
- Projets migrés avant la standardisation sur ghcr.io
- Backups temporaires lors de migrations
Se connecter au registre GitLab
Le registre GitLab interne est en mode maintenance progressive. Privilégiez systématiquement ghcr.io pour tout nouveau projet ou service.
Pull-secret Kubernetes : argo-pull
Pour que le cluster Kubernetes puisse tirer les images privées depuis ghcr.io, undocker-registry secret nommé argo-pull est configuré dans chaque namespace applicatif.
Structure du secret
argo-pull-secret.yaml
Créer ou mettre à jour le secret
Référence dans les manifests
Les charts Helm internes référencent automatiquement ce secret via lesvalues.yaml :
values.yaml
Gestion des accès
Développeurs
Accès en lecture seule sur ghcr.io via PAT personnel. Pas de push manuel : la CI GitHub Actions pousse automatiquement les images.
CI/CD (GitHub Actions)
Accès en écriture via le secret
GHCR_PAT au niveau organisation. Utilisé par les workflows pour pousser les images après build.Cluster Kubernetes
Accès en lecture via le secret
argo-pull. Le compte bot associé a uniquement les permissions read:packages.argocd-image-updater
Accès en lecture via le même secret
argo-pull. Détecte les nouveaux tags et met à jour les Applications ArgoCD.Rotation des credentials
1
Générer un nouveau PAT
Dans GitHub Settings > Developer settings > Personal access tokens, créez un nouveau token avec le scope
read:packages (ou write:packages pour la CI).2
Mettre à jour le secret Kubernetes
Recréez le secret
argo-pull dans tous les namespaces concernés avec la nouvelle valeur.3
Mettre à jour GitHub Secrets
Remplacez la valeur de
GHCR_PAT dans les secrets de l’organisation GitHub.4
Valider le pull
Déclenchez un déploiement de test et vérifiez que les pods démarrent correctement avec la nouvelle image.
5
Révoquer l'ancien PAT
Supprimez l’ancien token GitHub une fois la validation terminée.