Primeros pasos con DHI Select y Enterprise
Esta guía te muestra cómo empezar a trabajar con las suscripciones DHI Select y Enterprise. A diferencia de DHI Community, este flujo de trabajo te deja replicar repositorios en el espacio de nombres de tu organización en Docker Hub, acceder a variantes de cumplimiento (FIPS), personalizar imágenes y obtener actualizaciones respaldadas por SLA.
Requisitos previos
Para utilizar este flujo de trabajo, necesitas:
- Acceso de propietario de la organización en tu espacio de nombres de Docker Hub.
- Uno de los siguientes:
- Una suscripción a DHI Select o Enterprise. Ponte en contacto con el equipo de ventas de Docker para adquirir DHI Enterprise o obtén más información sobre DHI Select.
- Una prueba activa de DHI. Inicia una prueba gratuita de DHI.
- Docker Desktop 4.65 o posterior para usar la CLI
docker dhi.
Cada paso, cuando corresponda, muestra las instrucciones para Docker Hub y la línea de comandos. Puedes usar cualquiera de las dos interfaces.
Paso 1: Buscar una imagen para usar
Ve a Docker Hub e inicia sesión.
Selecciona tu organización en la barra lateral izquierda.
Navega a Hardened Images > Catalog.
Usa la barra de búsqueda o los filtros para buscar una imagen (por ejemplo,
python,nodeogolang). Para este ejemplo, buscapython.Para buscar una imagen con una variante de cumplimiento (FIPS o STIG), selecciona Filter by y elige la opción de cumplimiento correspondiente.
Selecciona el repositorio de Python para ver sus detalles.
Selecciona Images para ver las variantes de imágenes disponibles.
Lista los repositorios de imágenes disponibles:
$ docker dhi catalog list --type imagePara filtrar por nombre y cumplimiento de FIPS, usa las opciones
--filtery--fips:$ docker dhi catalog list --filter python --fipsObtén los detalles de la imagen para el repositorio:
$ docker dhi catalog get python
Continúa con el siguiente paso para replicar la imagen. Para profundizar en la exploración de imágenes, consulta Buscar y evaluar Docker Hardened Images.
Paso 2: Replicar el repositorio
La réplica copia un repositorio de DHI en el espacio de nombres de tu organización en Docker Hub. Esto te deja recibir parches de seguridad de Docker respaldados por SLA para tus imágenes y utilizar la personalización, así como variantes de cumplimiento. Solo los propietarios de la organización pueden replicar repositorios.
- En la página de detalles del repositorio de imágenes que encontraste en el paso anterior, selecciona Use this image > Mirror repository. Ten en cuenta que debes haber iniciado sesión en Docker Hub para realizar esta acción.
- Selecciona Mirror.
- Espera a que las imágenes terminen de replicarse. Esto puede tardar unos minutos.
- Verifica que el repositorio replicado aparezca en el espacio de nombres de tu organización con el prefijo
dhi-(por ejemplo,dhi-python).
Para utilizar los siguientes comandos, debes autenticarte o configurar la autenticación de la CLI de DHI con tu token de Docker. Para obtener más detalles, consulta Usar la CLI de DHI.
Inicia la réplica del repositorio en el espacio de nombres de tu organización. Reemplaza
<your-org>con el nombre de tu organización.$ docker dhi mirror start --org <your-org> \ -r dhi/python,<your-org>/dhi-pythonEspera a que las imágenes terminen de replicarse. Esto puede tardar unos minutos.
Verifica el repositorio replicado. Reemplaza
<your-org>con el nombre de tu organización.$ docker dhi mirror list --org <your-org>
Continúa con el siguiente paso para personalizar la imagen. Para profundizar en la réplica de imágenes, consulta Replicar un repositorio.
Paso 3: Personalizar la imagen
Una de las ventajas clave de DHI Select y Enterprise es la posibilidad de personalizar tus imágenes replicadas. Puedes añadir paquetes del sistema, configurar ajustes o realizar otras modificaciones para cumplir con los requisitos específicos de tu organización.
Este ejemplo muestra cómo añadir el paquete del sistema curl a tu imagen de Python replicada.
- Ve al espacio de nombres de tu organización en Docker Hub.
- Navega a tu repositorio replicado (por ejemplo,
dhi-python). - Selecciona Customizations.
- Selecciona Create customization.
- Busca
3-alpine3.23y selecciona una de las imágenes. - En Add packages, selecciona curl.
- Selecciona Next: Configure.
- En Customization name, introduce un nombre para tu personalización (por ejemplo,
curl). - Selecciona Next: Review customization.
- Selecciona Create customization para iniciar la compilación.
La compilación de la personalización puede tardar unos minutos. Ve a la pestaña Customizations de tu repositorio replicado y consulta la columna Last build para monitorizar el estado de la compilación.
Para utilizar los siguientes comandos, debes autenticarte o configurar la autenticación de la CLI de DHI con tu token de Docker. Para obtener más detalles, consulta Usar la CLI de DHI.
Crea una personalización. Reemplaza
<your-org>con el nombre de tu organización. Esto crea un archivo llamadomy-customization.yamlcon los detalles de la personalización.$ docker dhi customization prepare --org <your-org> python 3-alpine3.23 \ --destination <your-org>/dhi-python \ --name "python con curl" \ --output my-customization.yamlAñade el paquete
curla la personalización. Puedes editar el archivo con cualquier editor de texto o código. Los siguientes comandos utilizanechopara añadir las líneas necesarias al archivo YAML:$ echo "contents:" >> my-customization.yaml $ echo " packages:" >> my-customization.yaml $ echo " - curl" >> my-customization.yamlAplica la personalización:
$ docker dhi customization create --org <your-org> my-customization.yamlVerifica que la personalización se haya creado:
$ docker dhi customization list --org <your-org>
La compilación de la personalización puede tardar unos minutos. Para comprobar el estado de la compilación:
- Ve al espacio de nombres de tu organización en Docker Hub.
- Navega a tu repositorio replicado (por ejemplo,
dhi-python). - Selecciona Customizations.
- Consulta la columna Last build para monitorizar el estado de la compilación.
Para profundizar en la personalización, consulta Personalizar una Docker Hardened Image.
Paso 4: Descargar y ejecutar tu imagen personalizada
Una vez completada la compilación de la personalización, puedes descargar y ejecutar la imagen personalizada desde el espacio de nombres de tu organización en Docker Hub.
Inicia sesión en Docker Hub:
$ docker loginDescarga la imagen personalizada de tu organización. Reemplaza
<your-org>con el nombre de tu organización. La etiqueta personalizada incluye el sufijo basado en el nombre de tu personalización.$ docker pull <your-org>/dhi-python:3-alpine3.23_python-with-curlEjecuta la imagen y comprueba que
curlesté instalado:$ docker run --rm <your-org>/dhi-python:3-alpine3.23_python-with-curl curl --version
Esto confirma que el paquete curl se añadió correctamente a la imagen.
Para profundizar en el uso de las imágenes, consulta:
- Usar una Docker Hardened Image para uso general.
- Usar un Helm chart para el despliegue con Helm.
Paso 5: Eliminar la personalización y detener la réplica
Para eliminar la personalización y detener la réplica del repositorio:
- Ve al espacio de nombres de tu organización en Docker Hub.
- Navega a tu repositorio replicado (por ejemplo,
dhi-python). - Selecciona Customizations.
- Busca la personalización que quieres eliminar (por ejemplo,
python con curl). - Selecciona el icono de la papelera.
- Selecciona Delete customization para confirmar la eliminación.
- Para detener la réplica, vuelve a la lista de repositorios de tu organización.
- Busca el repositorio replicado (por ejemplo,
dhi-python). - Selecciona Settings.
- Selecciona Stop mirroring.
- Selecciona Stop mirroring para confirmar.
Siguientes pasos
Has replicado, personalizado y ejecutado una Docker Hardened Image. Aquí tienes algunas formas de continuar:
- Migrar aplicaciones existentes a DHI: Usa Gordon para actualizar tus Dockerfiles de modo que utilicen Docker Hardened Images como base.
- Verificar DHI: Usa herramientas como Docker Scout o Cosign para inspeccionar y verificar atestaciones firmadas, como SBOM y procedencia.
- Escanear DHI: Analiza la imagen con Docker Scout u otros escáneres para identificar CVE conocidos.