Skip to main content

Configurar una especificación mínima para las máquinas de los codespaces

Puedes evitar que los tipos de máquina con recursos insuficientes se usen en los GitHub Codespaces de tu repositorio.

¿Quién puede utilizar esta característica?

People with write permissions to a repository can create or edit the codespace configuration.

Información general

Cada codespace que creas se hospeda en una máquina virtual independiente. Al crear un codespace a partir de un repositorio, normalmente puedes elegir entre diferentes tipos de máquinas virtuales. Cada tipo de máquina tiene recursos diferentes (núcleos de procesador, memoria, almacenamiento) y, de forma predeterminada, se usa el tipo de máquina con los recursos mínimos. Para más información, consulta Cambiar el tipo de máquina de tu codespace.

Si tu proyecto necesita cierto nivel de potencia de cómputo, puedes configurar GitHub Codespaces para que solo los tipos de máquina que cumplan con estos requisitos se puedan usar de forma predeterminada o los puedan seleccionar los usuarios. Esta configuración se realiza en un archivo devcontainer.json.

Los codespaces no publicados (codespaces creados a partir de una plantilla que no estén vinculados a un repositorio de GitHub) siempre se ejecutarán en una máquina virtual con las mismas especificaciones. No se puede cambiar el tipo de máquina de un codespace no publicado.

Important

El acceso a algunos tipos de máquina puede estar restringido a nivel de organización. Habitualmente, esto se hace para prevenir que las personas elijan máquinas con recursos superiores, las cuales se cobran en tazas más altas. Si tu repositorio se ve afectado por la política de tipos de máquina a nivel organizacional, debes asegurarte de que no configures una especificación mínima que impida que las personas seleccionen los tipos de máquina disponibles que necesitan. Para más información, consulta Restringir el acceso a los tipos de máquina.

Configurar una especificación de máquina mínima

  1. Puedes configurar los codespaces creados para el repositorio agregando configuraciones a un archivo devcontainer.json. Si el repositorio aún no contiene un archivo devcontainer.json, puedes agregar uno ahora. Consulte "Incorporación de una configuración de contenedor de desarrollo al repositorio".

  2. Edita el archivo devcontainer.json, agregando la propiedad hostRequirements en el nivel superior del archivo, dentro del objeto JSON envolvente. Por ejemplo:

    JSON
    "hostRequirements": {
       "cpus": 8,
       "memory": "8gb",
       "storage": "32gb"
    }
    

    Puede especificar una de las opciones o todas: cpus, memory y storage.

    Para verificar las especificaciones de los tipos de máquina de GitHub Codespaces que actualmente están disponibles para tu repositorio, realiza el proceso de crear un codespace hasta que veas la elección de tipos de máquina. Para más información, consulta Creación de un codespace para un repositorio.

  3. Guarda el archivo y confirma tus cambios a la rama requerida del repositorio.

    Ahora, cuando crees un codespace para esta rama del repositorio y vayas a las opciones de configuración de creación, solo podrás seleccionar tipos de máquina que coincidan con los recursos que especificaste o los excedan.

    Captura de pantalla de una lista de tipos de máquina. Las opciones de 2 y 4 núcleos se etiquetan como "Por debajo de los requisitos del contenedor de desarrollo".

Información adicional