Вопрос или проблема
Когда я подключаюсь по SSH к своей виртуальной машине разработки и хочу открыть что-то в VSCode, я не могу сделать это из командной строки. Это, очевидно, имеет смысл, потому что команда code
выполняется на удалённом сервере, который не имеет никакого представления о хосте.
Тем не менее, выполнение команды code
из интегрированного терминала VSCode с использованием плагина SSH откроет другое окно VSCode для этой удалённой папки.
Возможно ли выполнить команду (например, code ./foldername
) на моем SSH-соединении и чтобы эта команда что-то сделала на хосте (например, открыла VSCode)? Из обычного терминального окна через SSH? Существует ли такое?
Решение описано в статье Microsoft
Удаленная разработка с использованием SSH.
Это решение включает в себя запуск сервера VScode на удалённой машине и экземпляра VScode для разработки на клиентской машине.
Точный процесс описан в статье (и может измениться в будущем).
Для этого требуется установить на сервер VScode
пакет расширений для удалённой разработки.
На клиентском VScode вы начинаете с выбора “Remote-SSH: Connect to Host…”
из командной палитры (F1) и использования того же user@hostname
из
SSH-соединения.
Статья иллюстрирует процесс следующей диаграммой:
Ответ или решение
Да, это возможно. Вы можете использовать Visual Studio Code (VSCode) для работы с кодом на вашем виртуальном сервере разработки (VM) из вашей локальной машины. Этот процесс включает использование функции SSH, встроенной в VSCode, и требует определенных настроек как на сервере, так и на локальной машине.
Подробное руководство
-
Установка расширений VSCode:
Чтобы начать, вам необходимо установить набор расширений Remote Development на вашем локальном экземпляре VSCode. Это расширение позволяет VSCode взаимодействовать с удаленными серверами через SSH. Вы можете установить его из Visual Studio Code Marketplace. -
Настройка SSH-доступа:
Убедитесь, что у вас есть доступ к вашему виртуальному серверу через SSH. Это предполагает, что у вас уже настроены ключи SSH или вы можете ввести пароль для доступа к серверу. Проверьте соединение, введя в терминал:ssh user@hostname
Замените
user
иhostname
на ваши учетные данные. -
Подключение через VSCode:
После установки расширений и проверки SSH соединения, откройте VSCode на вашем локальном компьютере. Используя командную палитру (нажмитеF1
), выберите опцию:Remote-SSH: Connect to Host...
Введите ваши SSH-данные (
user@hostname
). Это подключение создаст серверный экземпляр VSCode на вашем удаленном сервере. -
Открытие папки проекта:
После подключения к удаленному серверу вы можете открыть любую папку, находящуюся на сервере. Вам нужно будет использовать меню или панели управления в VSCode, чтобы просмотреть файловую систему удаленного сервера и открыть нужную папку или проект. -
Преимущества использования Remote-SSH:
- Удобство работы: Вам не нужно постоянно переключаться между локальной и удаленной средой. Все файлы могут редактироваться непосредственно из VSCode.
- Наличие всех мощностей вашего локального VSCode: Вы можете использовать все функции редактора и расширений, которые уже у вас установлены, а также все возможности серверной среды.
- Отладка и терминал: Вы можете использовать встроенный терминал VSCode для выполнения команд на удаленном сервере и отладки вашего кода.
Ответ на ваш вопрос
Если вы хотите запустить команду, такую как code ./foldername
, сессия SSH не сможет выполнить эту команду на вашей локальной машине, так как командная строка в этом случае ориентирована на удаленный сервер. Однако, используя описанный выше процесс с Remote-SSH, вы можете запустить экземпляр VSCode, подключенный к вашему серверу, и получить доступ к вашей папке разработки без необходимости выполнения команд через SSH.
Заключение
Использование возможности Remote Development в VSCode упрощает рабочие процессы для разработчиков, работающих с удаленными серверами. Работая в интегрированной среде VSCode, вы сможете использовать все инструменты и настройки, доступные на вашем локальном компьютере, что значительно повысит эффективность разработки.
Для получения более подробной информации о настройке и использовании Remote Development, вы можете ознакомиться с официальной документацией на сайте Microsoft.