Облачные среды разработки (CDE) перестали быть экзотикой. Два главных игрока — Gitpod и GitHub Codespaces — решают одну задачу: дать разработчику готовое окружение по щелчку. Но под капотом они устроены по-разному, и выбор влияет на всё — от цены до безопасности.
Архитектура и модель запуска
Gitpod построен вокруг собственного оркестратора воркспейсов. Окружение описывается в .gitpod.yml или стандартном devcontainer.json, а контейнеры крутятся в изолированной инфраструктуре Gitpod (или self-hosted у вас на Kubernetes). Ключевая идея — предварительные сборки (prebuilds): окружение собирается заранее при каждом пуше, поэтому новый воркспейс поднимается за секунды.
GitHub Codespaces глубоко встроен в GitHub. Окружение — это контейнер на базе devcontainer.json, запускаемый в Azure-инфраструктуре Microsoft. Всё живёт прямо в репозитории: откройте любой PR — и через полминуты у вас среда с кодом ветки.
Интеграции и DX
Codespaces выигрывает за счёт бесшовной связки с GitHub: порты, секреты, prebuilds, Actions — всё в одном месте. Если команда уже живёт в GitHub, порог входа минимален.
Gitpod сильнее в независимости: он работает с GitLab, Bitbucket и self-hosted Git, а редактор можно выбрать — VS Code, JetBrains (через Gateway) или браузер. Это критично для компаний, которые не хотят привязываться к экосистеме Microsoft.
Тарифы
Codespaces входит в GitHub Pro/Team ($4/мес и выше) и даёт 120 core-часов + 15 ГБ хранилища бесплатно. Дополнительные часы оплачиваются по мере использования.
Gitpod даёт 50 часов в месяц бесплатно на free-плане, далее от $9/мес за разработчика. Self-hosted версия Gitpod доступна на enterprise-планах.
Безопасность
Gitpod выигрывает у команд с жёсткими требованиями: self-hosted опция даёт полный контроль над инфраструктурой и данными. Codespaces работает только в облаке Microsoft (с возможностью подключаться к приватным сетям через Azure).
Что выбрать
- GitHub-команды, которым нужна простота и минимум настройки → Codespaces;
- Мульти-Git / self-hosted / JetBrains → Gitpod;
- Жёсткие требования к безопасности и данным → Gitpod (self-hosted).
Оба продукта зрелые. Решение в итоге сводится к тому, насколько вы привязаны к экосистеме GitHub и нужен ли вам контроль над инфраструктурой.