Artifact Registry est le service recommandé pour gérer les images de conteneurs. Container Registry demeure compatible, mais ne recevra que les correctifs de sécurité critiques. En savoir plus sur la transition vers Artifact Registry.

Bonnes pratiques pour les conteneurs

Cette page présente les bonnes pratiques à suivre pour créer et exécuter des images de conteneurs.

Créer des conteneurs

L'approche que vous choisissez pour créer des images de conteneur peut avoir un impact sur la vitesse de création et de déploiement, ainsi que sur les efforts nécessaires pour gérer vos images.

Découvrez les bonnes pratiques à suivre pour créer et exécuter des conteneurs plus facilement.

Vous pouvez également consulter les bonnes pratiques de Docker concernant la création d'images.

Travailler avec des conteneurs

Découvrez les bonnes pratiques pour l'exploitation de conteneurs. Ces pratiques incluent des recommandations en matière de sécurité, de surveillance et de journalisation qui facilitent l'exécution des applications dans Google Kubernetes Engine et dans les conteneurs en général.

Informations spécifiques aux registres publics

Soyez très attentif aux cas suivants:

Utiliser des images provenant de sources publiques

Lorsque vous utilisez des images provenant de sources publiques telles que Docker Hub, vous intégrez un code que votre organisation ne contrôle pas dans votre chaîne d'approvisionnement logicielle. Pour limiter les risques, vous pouvez:

  • Créez vos propres images pour contrôler le contenu des images.
  • Utilisez une image de base standardisée et basez-vous sur cette image.
  • Recherchez des failles dans les images et corrigez-les.
  • Appliquez des normes et des règles aux images que vous déployez.

En savoir plus sur les considérations relatives aux images publiques

Rendre vos registres publics

Vous pouvez rendre public le registre de votre projet Google Cloud en accordant à l'identité allUsers un accès en lecture sur le bucket de stockage de registre.

Si tous vos utilisateurs disposent de comptes Google Cloud, vous pouvez limiter l'accès aux utilisateurs authentifiés disposant de l'identité allAuthenticatedUsers.

Tenez compte des consignes suivantes avant de rendre un registre public:

  • Vérifiez que toutes les images que vous stockez dans le registre sont partageables publiquement et n'exposent pas d'identifiants, de données à caractère personnel ni de données confidentielles.
  • La sortie de réseau vous est facturée lorsque les utilisateurs extraient des images. Si vous prévoyez une quantité importante de trafic de téléchargement sur Internet, envisagez les coûts associés.
  • Par défaut, les projets ont un quota par utilisateur illimité. Pour éviter les utilisations abusives, limitez le quota par utilisateur au sein de votre projet.

Supprimer les images inutilisées

Supprimez les images de conteneurs inutilisées pour réduire les coûts de stockage et minimiser les risques liés à l'utilisation d'anciens logiciels. Plusieurs outils sont disponibles pour vous aider dans cette tâche, dont gcr-cleaner. L'outil gcr-cleaner n'est pas un produit Google officiel.

Évaluer la sécurité des conteneurs

Le CIS (Center for Internet Security) dispose d'un benchmark Docker permettant d'évaluer la sécurité d'un conteneur Docker.

Docker fournit un script Open Source appelé Docker Bench for Security. Vous pouvez exécuter ce script pour vérifier qu'un conteneur Docker en cours d'exécution respecte certains critères du benchmark Docker du CIS.

Le script Docker Bench for Security vous permet de vérifier de nombreux éléments dans le benchmark Docker du CIS. Cependant, tous les éléments ne sont pas vérifiables avec le script. Par exemple, le script ne peut pas vérifier si l'hôte du conteneur est renforcé ou si l'image du conteneur inclut des données à caractère personnel. Examinez tous les éléments du benchmark et identifiez ceux qui peuvent nécessiter une validation supplémentaire.

Sécuriser les déploiements

Découvrez comment créer une chaîne d'approvisionnement logicielle sécurisée sur Google Kubernetes Engine, et comment définir et appliquer des règles de déploiement à l'aide de l'analyse des failles et de l'autorisation binaire sur Google Cloud.

Vous pouvez également regarder une vidéo qui décrit comment sécuriser votre chaîne d'approvisionnement logicielle.