Skip to main content
Publicamos actualizaciones para la documentación con frecuencia y es posible que aún se esté traduciendo esta página. Para obtener la información más reciente, consulta la documentación en inglés.

Restricción de la imagen base para codespaces

Puedes especificar qué imágenes base se pueden usar para los nuevos codespaces creados en tu organización.

Quién puede usar esta característica

To manage image constraints for an organization's codespaces, you must be an owner of the organization.

Las organizaciones que tengan planes de GitHub Team y GitHub Enterprise pueden habilitar el uso de GitHub Codespaces, que se factura a la organización. Así, las organizaciones podrán acceder a configuraciones aplicables a los codespaces que paga la organización. Para obtener más información, vea «Habilitación de GitHub Codespaces en la organización» y «Productos de GitHub».

Información general

Al crear un codespace, se crea automáticamente un contenedor Docker en una máquina virtual remota. El contenedor Docker se crea a partir de una imagen de Docker. La imagen es básicamente una plantilla para los contenedores Docker y determina muchos aspectos del entorno resultante proporcionado por el codespace.

Puedes elegir qué imagen quieres usar para tus codespaces especificándola en la configuración del contenedor de desarrollo de un repositorio. Puedes hacerlo, por ejemplo, mediante la propiedad image del archivo devcontainer.json.

JSON
"image": "mcr.microsoft.com/vscode/devcontainers/javascript-node:18",

Para obtener más información, consulta la especificación de contenedores de desarrollo en el sitio web de contenedores de desarrollo.

Si no especificas una imagen en la configuración del contenedor de desarrollo de un repositorio, se usa la imagen predeterminada. La imagen predeterminada contiene una serie de versiones en tiempo de ejecución de lenguajes populares y herramientas de uso frecuente. Para obtener más información, vea «Introducción a los contenedores dev».

Como propietario de la organización, puedes agregar una directiva para restringir qué imágenes se pueden usar para los codespaces creados en tu organización.

Si la imagen especificada en la configuración del contenedor de desarrollo no coincide con una de las imágenes permitidas, se muestra el siguiente mensaje cuando alguien intenta crear un codespace para el repositorio:

No se puede crear el codespace: la imagen base "DETALLES DE LA CONFIGURACIÓN DEL CONTENEDOR DE DESARROLLO" no está permitida de acuerdo con una directiva de la organización establecida por el administrador de tu organización.

Notas:

  • La directiva de imagen base solo se aplica cuando se crea un codespace. Actualmente no se aplica cuando se recompila un contenedor. Esto se modificará en una versión futura. Para obtener más información, vea «Ciclo de vida de un codespace».
  • La directiva de imagen base no se aplica a la imagen predeterminada ni a la imagen que se usa para recuperar un codespace si se introduce un error en la configuración de un contenedor de desarrollo que impide que se recompile el contenedor.

Configurar políticas específicas para los repositorios y a lo largo de la organización

Cuando creas una política, eliges si esta aplica a todos los repositorios de tu organización o solo a algunos específicos. Si configuras una política a lo largo de la organización, entonces cualquier política que configures para los repositorios individuales debe de caer dentro de las restricciones que se configuraron a nivel organizacional. La adición de directivas hace que la elección de imágenes sea más restrictiva, no menos.

Por ejemplo, podrías crear una directiva para toda la organización que restrinja la imagen base a una de las 10 imágenes especificadas. Después, puedes establecer una directiva para el repositorio A que restrinja la imagen a un subconjunto compuesto por tan solo dos de las imágenes especificadas a nivel de la organización. Especificar imágenes adicionales para el repositorio A no tendrá ningún efecto, porque estas imágenes no están especificadas en la directiva para toda la organización. Si agregas una directiva a nivel organizacional, deberás establecerla en la mayor selección de imágenes que estará disponible para cualquier repositorio de tu organización. Entonces podrás agregar las políticas específicas para los repositorios y así restringir aún más la elección.

Nota: Las directivas de codespace son válidas únicamente en los codespaces que se facturarán a tu organización. Si un usuario individual crea un codespace para un repositorio de tu organización y la organización no se factura, dicho codespace no estará enlazado por estas políticas. Para información sobre cómo elegir quién puede crear codespaces que se van a factura a tu organización, consulta "Habilitación de GitHub Codespaces en la organización".

Adición de una directiva para definir las imágenes permitidas

  1. En la esquina superior derecha de GitHub.com, haga clic en la foto de perfil y luego en Your organizations.

    Captura de pantalla del menú desplegable en la imagen de perfil de @octocat. "Sus organizaciones" se destaca en naranja oscuro. 2. Junto a la organización, haga clic en Settings. 1. En la sección "Código, planificación y automatización" de la barra lateral, selecciona Codespaces y, después, haz clic en Directivas.

  2. En la página "Directivas de codespace", haga clic en Crear directiva.

  3. Ingresa un nombre para tu política nueva.

  4. Haz clic en Agregar restricción y elige Imágenes base.

  5. Haz clic en para editar la restricción.

  6. En el campo "Valores permitidos", escribe la dirección URL completa de una imagen que quieras permitir.

    Captura de pantalla de la dirección URL "mcr.microsoft.com/vscode/devcontainers/java" especificada en el campo "Valores permitidos".

    Nota: Debes especificar una URL de imagen que coincida exactamente con el valor especificado en una configuración de contenedor de desarrollo.

  7. Haz clic en para agregar el valor.

  8. Si es necesario, repite los dos pasos anteriores para agregar más direcciones URL de imágenes.

  9. Haz clic fuera del cuadro de diálogo para cerrarlo.

  10. De forma predeterminada, la directiva se establece para aplicarse a todos los repositorios; si deseas que se aplique solo a algunos de los repositorios de la organización, haz clic en Todos los repositorios y, a continuación, haz clic en Repositorios seleccionados en el menú desplegable.

    Captura de pantalla de la lista desplegable de selección del repositorio, en la que se muestran las opciones "Todos los repositorios" y "Repositorios seleccionados".

    Con la opción Repositorios seleccionados seleccionada:

    1. Haga clic en .

      Captura de pantalla del icono de configuración (un símbolo de engranaje) a la izquierda de un botón con la etiqueta "Repositorios seleccionados".

    2. Selecciona los repositorios a los cuales quieres que aplique esta política.

    3. En la parte inferior de la lista de repositorios, haga clic en Select repositories.

      Captura de pantalla de una lista de repositorios, cada uno con una casilla. Hay tres repositorios seleccionados.

  11. Si quieres agregar otra restricción a la directiva, haz clic en Agregar restricción y elige otra restricción. Para obtener información sobre otras restricciones, consulta:

  12. Cuando hayas terminado de agregar restricciones a la directiva, haz clic en Guardar.

La directiva se aplica cuando alguien intenta crear un nuevo codespace que se puede facturar a tu organización. La restricción de la imagen base no afecta a los codespaces existentes, ya estén activos o detenidos.

Editar una política

Puedes editar una directiva existente. Por ejemplo, puede que te interese agregar restricciones a una directiva o quitarlas.

  1. Muestra la página de "Políticas del Codespace". Para obtener más información, consulta "Adición de una directiva para definir las imágenes permitidas".
  2. Haz clic en el nombre de la política que quieres editar.
  3. Junto a la restricción "Imágenes base", haz clic en .
  4. Agrega o quita direcciones URL de imágenes.
  5. Haga clic en Save(Guardar).

Borrar una política

  1. Muestra la página de "Políticas del Codespace". Para obtener más información, consulta "Adición de una directiva para definir las imágenes permitidas".

  2. Haz clic en el botón de borrar a la derecha de la política que quieras borrar.

    Captura de pantalla de una directiva con el botón Eliminar (icono de papelera) resaltado con un contorno naranja oscuro.