Запуск команд для 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 myscript.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