Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Ограничение базового образа для codespace

Вы можете указать, какие базовые образы можно использовать для новых codespace, созданных в организации.

Кто может использовать эту функцию

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

Организации с планами GitHub Team и GitHub Enterprise могут включить использование GitHub Codespaces, оплачиваемого для организации. Затем эти организации могут получить доступ к параметрам, которые применяются к пространствам кода, оплаченным организацией. Дополнительные сведения см. в разделах Включение GitHub Codespaces для организации и Продукты GitHub.

Общие сведения

При создании codespace контейнер Docker автоматически создается на удаленной виртуальной машине. Контейнер Docker создается из образа Docker. Образ фактически является шаблоном для контейнеров Docker и определяет многие аспекты результирующей среды, предоставляемой пространством кода.

Вы можете выбрать образ, который вы хотите использовать для codespaces, указав его в конфигурации контейнера разработки для репозитория. Это можно сделать, например, с помощью image свойства в devcontainer.json файле .

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

Дополнительные сведения см. в спецификации контейнеров разработки на веб-сайте "Контейнеры разработки".

Если вы не укажете образ в конфигурации контейнера разработки для репозитория, используется образ по умолчанию. Образ по умолчанию содержит несколько версий среды выполнения для популярных языков и часто используемых средств. Дополнительные сведения см. в разделе Основные сведения о контейнерах разработки.

Как владелец организации вы можете добавить политику, ограничивающую, какие образы можно использовать для codespace, созданных в вашей организации.

Если образ, указанный в конфигурации контейнера разработки, не соответствует одному из разрешенных образов, при попытке создать codespace для репозитория отображается следующее сообщение:

Не удалось создать Codespace. Базовый образ "DETAILS FROM DEV CONTAINER CONFIGURATION" не допускается на основе политики организации, установленной администратором организации.

Примечания

  • Политика базового образа применяется только при создании codespace. В настоящее время он не применяется при перестроении контейнера. Это изменится в будущем выпуске. Дополнительные сведения см. в разделе Жизненный цикл codespace.
  • Политика базового образа не применяется к образу по умолчанию или образу, который используется для восстановления codespace, если в конфигурации контейнера разработки возникает ошибка, которая предотвращает перестроение контейнера.

Параметр политик для всей организации и для указанного репозитория

При создании политики вы выбираете, применяется ли она ко всем репозиториям в организации или только к указанным. Если вы задали политику для всей организации, все политики, заданные для отдельных репозиториев, должны относиться к набору ограничений на уровне организации. Добавление политик делает выбор образа более строгим, а не менее строгим.

Например, можно создать политику всей организации, которая ограничивает базовый образ любым из десяти указанных образов. Затем можно задать политику для репозитория A, которая ограничивает образ только двумя образами, указанными на уровне организации. Указание дополнительных образов для репозитория A не будет иметь никакого эффекта, так как эти образы не указаны в политике уровня организации. Если вы добавляете политику для всей организации, следует задать для нее самый большой выбор образов, которые будут доступны для любого репозитория в вашей организации. Затем вы можете добавить политики для конкретного репозитория, чтобы дополнительно ограничить выбор.

Примечание. Политики Codespace применяются только к codespace, за которые будет выставляться счет вашей организации. Если отдельный пользователь создает codespace для репозитория в организации и организация не платит за него, на это codespace политики не распространяются. Сведения о том, как выбрать, кто может создавать codespace, счета за которые выставляются вашей организации, см. в разделе Включение GitHub Codespaces для организации.

Добавление политики для определения разрешенных образов

  1. В правом верхнем углу GitHub.com щелкните фотографию профиля, а затем щелкните Ваши организации.

    Снимок экрана: раскрывающееся меню под @octocatизображением профиля. "Ваши организации" выделены темно-оранжевым цветом. 2. Рядом с организацией щелкните Параметры. 1. В разделе "Код, планирование и автоматизация" боковой панели выберите Codespaces и щелкните Политики.

  2. На странице «Политики Codespace» нажмите кнопку Создать политику.

  3. Введите имя для новой политики.

  4. Щелкните Добавить ограничение и выберите Базовые образы.

  5. Нажмите , чтобы изменить ограничение.

  6. В поле "Разрешенные значения" введите полный URL-адрес изображения, который вы хотите разрешить.

    Снимок экрана: URL-адрес "mcr.microsoft.com/vscode/devcontainers/java", введенный в поле "Разрешенные значения".

    Примечание. Необходимо указать URL-адрес образа, который точно соответствует значению, указанному в конфигурации контейнера разработки.

  7. Нажмите кнопку "плюс" (), чтобы добавить значение.

  8. При необходимости повторите два предыдущих шага, чтобы добавить дополнительные URL-адреса изображений.

  9. Щелкните вне диалогового окна, чтобы закрыть его.

  10. По умолчанию политика применяется ко всем репозиториям. Если вы хотите применить ее только к некоторым репозиториям в вашей организации, щелкните Все репозитории , а затем выберите Выбранные репозитории в раскрывающемся меню.

    Снимок экрана: раскрывающийся список выбора репозитория с параметрами "Все репозитории" и "Выбранные репозитории".

    С выбранным параметром Выбранные репозитории :

    1. Щелкните .

      Снимок экрана: значок параметров (символ шестеренки) слева от кнопки с меткой "Выбранные репозитории".

    2. Выберите репозитории, к которым будет применяться эта политика.

    3. В нижней части списка репозиториев щелкните Выбрать репозитории.

      Снимок экрана: список репозиториев с флажком. Выбрано три репозитория.

  11. Если вы хотите добавить другое ограничение в политику, щелкните Добавить ограничение и выберите другое ограничение. Сведения о других ограничениях см. в разделе:

  12. Завершив добавление ограничений в политику, щелкните Сохранить.

Политика применяется, когда кто-либо пытается создать новое пространство кода, которое оплачивается для вашей организации. Ограничение базового образа не влияет на существующие codespace, активные или остановленные.

Изменение политики

Можно изменить существующую политику. Например, вы можете захотеть добавить или удалить ограничения политики.

  1. Откройте страницу "Политики codespace". Дополнительные сведения см. в разделе Добавление политики для определения разрешенных образов.
  2. Щелкните имя политики, которую нужно изменить.
  3. Щелкните значок карандаша () рядом с ограничением "Базовые изображения".
  4. Добавление или удаление URL-адресов изображений.
  5. Нажмите Сохранить.

Удаление политики

  1. Откройте страницу "Политики codespace". Дополнительные сведения см. в разделе Добавление политики для определения разрешенных образов.

  2. Нажмите кнопку "Удалить" справа от политики, которую вы хотите удалить.

    Снимок экрана: политика с кнопкой удаления (значок корзины), выделенной темно-оранжевым контуром.