Skip to main content

Аварийное восстановление для GitHub Codespaces

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

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

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

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

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

Вариант 1. Создание нового пространства кода в другом регионе

В случае регионального сбоя рекомендуется воссоздать пространство кода в другом регионе, который не затронут сбоем, чтобы продолжить работу. Это новое пространство кода будет содержать все изменения на момент последней отправки кода в GitHub. Сведения о настройке другого региона вручную см. в разделе "Настройка региона по умолчанию для GitHub Codespaces".

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

Вариант 2. Ожидание восстановления

В этом случае вам не нужно предпринимать какие-либо действия. Знайте, что мы активно работаем над восстановлением доступности службы.

Текущее состояние службы можно проверить на панели мониторинга состояния.

Вариант 3. Клонирование репозитория локально или изменение в браузере

Хотя GitHub Codespaces обеспечивает преимущество предварительно настроенной среды разработчика, исходный код всегда должен быть доступен через репозиторий, размещенный на GitHub.com. В случае сбоя GitHub Codespaces вы по-прежнему можете клонировать репозиторий локально или редактировать файлы в редакторе браузера GitHub. Дополнительные сведения см. в разделе Изменение файлов.

Хотя в этом случае у вас нет настроенной среды разработки, вы сможете вносить изменения в исходный код по мере необходимости, пока работа службы не будет восстановлена.

Вариант 4. Использование расширения контейнеров разработки и Docker для локальной контейнерной среды

Если у репозитория есть devcontainer.jsonрасширение "Контейнеры разработки" в Visual Studio Code для сборки и присоединения к локальному контейнеру разработки для репозитория. Время настройки этого варианта зависит от локальных спецификаций и сложности настройки контейнера разработки. Дополнительные сведения см. в разделе "Разработка внутри контейнера" в документации по VS Code.

Примечание. Перед использованием этого варианта убедитесь в том, что локальная конфигурация соответствует минимальным требованиям.