Artifact Registry es el servicio recomendado para administrar imágenes de contenedor. Container Registry sigue siendo compatible, pero solo recibirá correcciones de seguridad críticas. Obtén más información sobre la transición a Artifact Registry.

Prácticas recomendadas para contenedores

En esta página, se proporciona información sobre las prácticas recomendadas para compilar y ejecutar las imágenes de contenedores.

Compila contenedores

El enfoque que adoptes para compilar imágenes de contenedor puede afectar la velocidad de las compilaciones y las implementaciones, así como el esfuerzo necesario para mantener tus imágenes.

Conoce las prácticas recomendadas para compilar contenedores que sean más fáciles de compilar y ejecutar.

También puedes leer las recomendaciones del Docker para compilar imágenes.

Operar contenedores

Conoce las prácticas recomendadas para trabajar con contenedores. Estas prácticas incluyen recomendaciones de seguridad, supervisión y registro que facilitan la ejecución de aplicaciones en Google Kubernetes Engine y en contenedores en general.

Consideraciones sobre los registros públicos

Considera con detenimiento los siguientes casos:

Usa imágenes de fuentes públicas

Cuando usas imágenes de fuentes públicas como Docker Hub, estás ingresando código que tu organización no controla en la cadena de suministro de software. Para mitigar el riesgo, puedes hacer lo siguiente:

  • Compila tus propias imágenes para controlar el contenido de imágenes.
  • Usar una imagen base estandarizada y compilar sobre esa imagen
  • Analiza las imágenes en busca de vulnerabilidades y aborda las vulnerabilidades identificadas.
  • Aplica estándares y políticas a las imágenes que implementas.

Más información sobre las consideraciones para las imágenes públicas

Haz públicos los registros

Puedes hacer que el registro en tu proyecto de Google Cloud sea público si otorgas acceso de lectura en el bucket de almacenamiento del registro a la identidad allUsers.

Si todos tus usuarios tienen cuentas de Google Cloud, puedes limitar el acceso a los usuarios autenticados con la identidad allAuthenticatedUsers en su lugar.

Considera los siguientes lineamientos antes de hacer público un registro:

  • Verifica que todas las imágenes que almacenas en el registro se puedan compartir de forma pública y no expongas credenciales, datos personales o datos confidenciales.
  • Se te cobra por la salida de red cuando los usuarios extraen imágenes. Si esperas mucho tráfico de descarga de Internet, considera los costos asociados.
  • De forma predeterminada, los proyectos tienen una cuota ilimitada por usuario. Para evitar abusos, limita la cuota por usuario en tu proyecto.

Quita las imágenes que no se usan

Quita las imágenes de contenedor que no se usen para reducir los costos de almacenamiento y mitigar los riesgos de usar software más antiguo. Hay una serie de herramientas disponibles para ayudar con esta tarea, incluida gcr-cleaner. La herramienta gcr-cleaner no es un producto oficial de Google.

Evalúa la seguridad de los contenedores

El Centro para la seguridad en Internet (CIS) tiene una referencia de Docker para evaluar la seguridad de un contenedor de Docker.

Docker proporciona una secuencia de comandos de código abierto llamada Docker Bench for Security. Puedes usar la secuencia de comandos para validar un contenedor de Docker en ejecución en relación con la referencia de Docker de CIS.

Docker Bench for Security puede ayudarte a verificar muchos elementos en la referencia de Docker de CIS, pero no todos los elementos se pueden verificar con la secuencia de comandos. Por ejemplo, la secuencia de comandos no puede verificar si el host del contenedor está endurecido o si la imagen del contenedor incluye datos personales. Revisa todos los elementos de la referencia y también identifica aquellos que podrían necesitar una verificación adicional.

Protege las implementaciones

Obtén información sobre cómo compilar una cadena de suministro de software seguro en Google Kubernetes Engine, y cómo usar el análisis de vulnerabilidades y la autorización binaria en Google Cloud para definir y aplicar las políticas a la implementación.

También puedes mirar un video sobre cómo proteger tu cadena de suministro de software.