Команда "code" не работает при удаленном подключении к контейнеру Docker с помощью VSCode - PullRequest
2 голосов
/ 13 июля 2020

Я использую VSCode в своем локальном P C и подключаюсь к контейнеру Docker на удаленном сервере с расширениями VSCode Remote - SSH и Remote - containers. Однако, когда я набираю

$ code <file name>

на терминале VSCode (Bash), я получаю сообщение об ошибке, в котором говорится, что

bash: code: command not found

и я не могу редактировать файл на Редактор VSCode.

Если я щелкну файл в проводнике VSCode (Ctrl + Shift + E), появится экран редактирования, но разве его нельзя вызвать с помощью команды code?

Кроме того, я вызываю палитру команд (Ctrl + Shift + P), а затем ищу Shell Command: Install 'code' command in PATH, но соответствующих команд не найдено.

Среда выполнения выглядит следующим образом:.

  • Локальный P C: Windows 10 Pro
  • Удаленный хост P C: Ubuntu 18.04.3 LTS
  • Docker контейнер на удаленном хосте P C: Ubuntu 18.04.3 LTS

Большое спасибо за ваш ответ.

Ответы [ 2 ]

0 голосов
/ 15 июля 2020

Похоже, вы не понимаете, в каком месте пишете команду code. Ваша установка Visual Studio Code локальна на вашем компьютере, а не внутри контейнера docker. Когда вы открываете терминал внутри контейнера docker, это как если бы это был совсем другой компьютер. Вот ссылка на документацию по vscode, которая интересна и полезна.

0 голосов
/ 13 июля 2020
• 1000 Я внимательно смотрю под домом и вижу, что в следующем каталоге был code.
$HOME/.vscode-server/bin/<directory with a hash-like name>/bin/

Итак, я пропустил через него PATH, и он сработал.

Кстати, <directory with a hash-like name> - это каталог с именем, похожим на ha sh, которое назначается случайным образом при удаленном подключении к контейнеру. Каждый раз он разный, поэтому обратитесь к нему самостоятельно.

Способ регистрации пути следующий.

export PATH="$PATH:$HOME/.vscode-server/bin/<directory with a hash-like name>/bin/"

Недостатком является то, что PATH (имя, похожее на хэштег) из code всегда меняется, когда я подключаюсь к контейнеру, и каждый раз сложно устанавливать PATH. Я хотел бы знать, есть ли какой-нибудь другой разумный способ сделать это, поэтому я буду продолжать запрашивать ответы.

Большое спасибо за вашу поддержку.

...