Хостинг предлагает сконфигурированное окружение для развёртывания приложений с поддержкой Node.js. Предустановлены основные пакеты: nvm, npm, yarn, pnpm, pm2, node с помощью которых вы можете установить все необходимые зависимости непосредственно в свой домашний каталог.
Все HTTP запросы с портов 80, 443 проксируются хостингом в ваше приложение на порт 3000. Если вам потребуется иная конфигурация, обратитесь с запросом в поддержку https://www.1gb.ru/about_support.php
Содержание |
1. В разделе личного кабинета полный список функций -> HTTP службы добавьте поддержку Node.js v2 для сайта (если сайта у вас ещё нет, то предварительно создайте его с главной страницы личного кабинета по ссылке Зарегистрировать, привязать домен и создать сайт [1], тип сервера "Лучший для PHP").
1. Подключитесь к серверу по SSH.
2. В домашнем каталоге создайте папку для вашего приложения:
$ mkdir ~/myapp
3. Создайте файл main.js в папке myapp такого содержания:
const http = require('http');
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World');
});
server.listen(3000, () => {
console.log('Server running at http://localhost:3000/');
});
4. Запуск:
$ cd ~/myapp && node main.js
Откройте ваш сайт в браузере, вы должны увидеть надпись "Hello World".
Вы можете самостоятельно управлять запуском сервера или использовать для этого диспетчер задач хостинга, который будет следить за тем, чтобы ваше приложение было всегда запущено в фоновом режиме.
1. Отредактируйте файл ~/conf.d/node, где
NODE_DIR="имя каталога приложения" NODE_START="команда запуска приложения"
Для веб-сервера "Hello World" из примера выше, файл ~/conf.d/node будет выглядеть следующим образом:
NODE_DIR="myapp" NODE_START="node main.js"
2. Запуск, остановка, проверка
$ ~/init.d/node start $ ~/init.d/node stop $ ~/init.d/node status run: node: (pid 2417) 3395s
Для управления компонентами приложения вы можете использовать pm2. Чтобы pm2 автоматически запускался после перезагрузок сервера, его конфигурацию вы также можете добавить в файл ~/conf.d/node. Для тестового приложения из примера выше это будет так:
NODE_DIR="myapp" NODE_START="pm2 start main.js --name myapp"
4. Для решения проблем используйте лог-файлы запуска сервера приложения из папки ~/logs_node