Запуск команд для Node.js и Python
Для чего это нужно
Окружение для сайтов на Python и Node.js устанавливается в домашнюю директорию пользователя. Поэтому если вводить команды из консоли сервера, не настроив виртуальное окружение, они могут работать не так, как ожидается или не работать вовсе.
Инструкции
Через shell-клиент панели
Для запуска команд мы рекомендуем использовать Shell-клиент в панели.
Перейдите в раздел Сайты, выберете ваш сайт с обработчиком Node.js или Python, нажмите на три точки справа и выберете Shell-клиент.

В новой открывшейся вкладке сразу можно вводить необходимые команды.

Запуск Shell-клиента выполняется из-под владельца сайта. При открытии терминала выполняются следующие действия:
- Переход в домашнюю директорию сайта;
- Добавление в переменную PATH пути к виртуальному окружению для выбранного сайта.
Через терминал
Для работы напрямую из терминала потребуется экспортировать путь до обработчика сайта в переменную окружения $PATH
или вводить полный путь до исполняемого файла обработчика.
Описанные шаги представлены в качестве примера и тестировались только на Ubuntu 20.04. В других операционных системах последовательность действий может отличаться.
По умолчанию обработчики находятся в домашних директориях сайта:
- Для Node.JS -
/var/www/ИМЯ_ПОЛЬЗОВАТЕЛЯ/data/.nvm/versions/node/ВЕРСИЯ_NODEJS/bin/
- Python -
/var/www/ИМЯ_ПОЛЬЗОВАТЕЛЯ/data/www/ИМЯ_САЙТА/.venv/bin/
Актуальный путь до обработчиков можно узнать в настройках конкретного сайта - для этого в разделе Сайты выберите нужный сайт и нажмите на Редактировать и выберите Изменить.

После уточнения данных, подключитесь к серверу по SSH под пользователем-владельцем сайта и перейдите в корневой каталог нужного сайта с помощью следующей команды:
cd ~/www/<имя-сайта>
Чтобы выполнить команду, укажите перед ней путь до самого обработчика, например:
/var/www/<имя_пользователя>/data/.nvm/versions/node/<версия-nodejs>/bin/node script.js
Чтобы не указывать путь до обработчика каждый раз при выполнении команды, добавьте его в окружение:
export PATH="<путь-до-обработчика>:$PATH"
Например:
- Для Node.JS -
export PATH="
/var/www/ИМЯ_ПОЛЬЗОВАТЕЛЯ/data/.nvm/versions/node/ВЕРСИЯ_NODEJS/bin/"
- Для Python -
export PATH="
/var/www/ИМЯ_ПОЛЬЗОВАТЕЛЯ/data/www/ИМЯ_САЙТА/.venv/bin/"
Добавление пути в окружение таким образом действует в рамках текущей сессии. Чтобы путь находился в окружении на постоянной основе, следует добавить команду в конфигурационный файл оболочки. Например, для оболочки «bash», такой файл расположен по пути /home/<имя-пользователя>/.bashrc
.
После внесения изменений в этот файл, повторно подключитесь к серверу или выполните следующую команду:
source ~/.bashrc