Новости и обновления

Удаленная разработка #1: Первый деплой без лишних хлопот

Поделиться:
Удаленная разработка #1: Первый деплой без лишних хлопот

Среда разработки необходима в повседневной работе, но она может быстро стать сложной в управлении. В этой статье из трёх частей мы рассмотрим, как улучшить комфорт и повысить продуктивность!

Бесконечные встречи, незначительно отличающиеся на каждой машине среды Docker, внезапные обновления системы — поддержание надёжного и согласованного рабочего места разработчика быстро превращается в ежедневную борьбу.

С каждым новым проектом приходится переустанавливать одни и те же инструменты, одни и те же CLI, перенастраивать одни и те же SDK или фреймворки. И, самое главное, надеяться, что локальная машина выдержит нагрузку, когда тесты, линтер и база данных работают одновременно. Всё это в условиях удалённой работы или мобильности, когда люди разрабатывают на ноутбуке, который иногда близок к устареванию, через капризный VPN.

В этой серии статей цель — изменить эту реальность, используя полноценную среду разработки, размещённую в облаке и доступную из любого браузера благодаря VS Code Server.

Идея заключается в том, чтобы иметь удалённую «рабочую станцию», мощную и, при необходимости, воспроизводимую и независимую.

В этой первой главе показано, как просто и вручную развернуть экземпляр Public Cloud и установить на него VS Code Server. Следующие главы будут посвящены его защите и автоматизации.

1. Развёртывание экземпляра

Для первых тестов, чтобы освоиться с окружением и протестировать его, может быть разумным выбрать довольно скромный экземпляр типа Discovery. Здесь будет использоваться экземпляр d2-2. 1 vCPU и 2 ГБ ОЗУ может быть достаточно.

2. Установка прикладной части

Источником для следующих шагов является GitHub проекта vscode-server: https://github.com/coder/code-server

Существует несколько вариантов установки. В этой главе, чтобы упростить развёртывание и для тех, кто не привык к Docker, установка будет выполнена с помощью «нативного» скрипта установки, без использования контейнеров.

ubuntu@vscode-server:~$ sudo apt update && sudo apt upgrade
ubuntu@vscode-server:~$ curl -fsSL
https://code-server.dev/install.sh | sh

Этого шага достаточно для установки необходимого. Теперь включите службу и проверьте её исправную работу.

ubuntu@vscode-server:~$ sudo systemctl enable --now code-server@$USER
ubuntu@vscode-server:~$ sudo systemctl status code-server@$USER
code-server@ubuntu.service - code-server
    Loaded: loaded (/usr/lib/systemd/system/code-server@.service; enabled; preset: enabled)
    Active: active (running) since Wed 2025-12-03 14:55:37 UTC; 15min ago
  Invocation: 1b393d84bebe415cbb770a17a0c8d399
   Main PID: 893 (node)
    Tasks: 22 (limit: 4532)
   Memory: 95.1M (peak: 112.1M)
    CPU: 1.868s
   CGroup: /system.slice/system-codex2dserver.slice/code-server@ubuntu.service
        ├─ 893 /usr/lib/code-server/lib/node /usr/lib/code-server
        └─1130 /usr/lib/code-server/lib/node /usr/lib/code-server/out/node/entry

3. Проверка конфигурации

На этом этапе служба работает, осталось завершить её настройку, особенно создание папки, которая будет содержать код, а также аутентификацию.

ubuntu@vscode-server:~$ mkdir workspace
ubuntu@vscode-server:~$ cat ~/.config/code-server/config.yaml
bind-addr: 127.0.0.1:8080
auth: password
password: <secure_password>
cert: false

Здесь необходимо указать надёжный пароль и проверить, что bind-addr соответствует желаемой конфигурации.

Если вы хотите протестировать службу как есть, используйте 0.0.0.0:8080. Затем перезапустите службу и перейдите к интерфейсу по адресу http://<ПУБЛИЧНЫЙ_IP>:8080.

После ввода в окне аутентификации пароля, указанного в config.yaml, вы попадёте непосредственно в VS Code в браузере.

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

На этом этапе можно напрямую клонировать ваши репозитории GitHub или использовать папку workspace для их клонирования.

Это, кстати, рекомендуется для большей долговечности, как вы увидите во второй главе.

Чтобы выполнить тестовый коммит через интерфейс vscode-server, необходимо настроить git локально (всего один раз), чтобы аутентификация удалённого репозитория выполнялась корректно.

ubuntu@vscode-server:~$ git config user.email "mail@foo.bar"
ubuntu@vscode-server:~$ git config --global user.name"John Doe"

С этого момента вы можете использовать удалённую среду разработки с vscode-server. При этом вы получаете практически все функции, которые могли бы иметь локально, но с преимуществами среды, предназначенной для этой цели.

⚠️ Напоминание: в текущем состоянии развёртывание не является «готовым к production»!

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

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

Эта первая глава завершается рабочей средой разработки, которая уже способна поддерживать реальный проект приложения!

Экземпляр запущен, VS Code Server отвечает в браузере, рабочее пространство готово, и первый репозиторий был клонирован и открыт, как на локальной машине. Эта основа показывает, что можно абстрагироваться от оборудования для повышения портативности и более лёгкого обмена общей конфигурацией в команде или на мобильном рабочем месте разработчика.

Удаленная разработка #1: Первый деплой без лишних хлопот