Node.js - быстрый старт
Материал из 1GbWiki.
[править] Подготовка
1. В разделе личного кабинета полный список функций -> HTTP службы добавьте поддержку Node.js для сайта сайта (если сайта у вас ещё нет, то предварительно создайте его с главной страницы личного кабинета по ссылке Зарегистрировать, привязать домен и создать сайт , тип сервера любой Linux).
Данная операция выделит IP адрес и порт, который будет прослушивать ваше приложение. В данный порт также будут проксироваться все запросы, приходящие на 80 и 443 порты вашего доменного имени.
2. Установку Node.js можно выполнить с помощью NVM, который установит Node.js и все сопутствующие пакеты в ваш домашний каталог, альтернативно можете использовать любой другой менеджер, либо установить из исходных текстов.
2.1 Установка nvm:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash
сообщение об успешно установке:
=> Close and reopen your terminal to start using nvm or run the following to use it now:
теперь отключиться от SSH и зайти заново.
$ nvm --version 0.37.2
2.2 Установка Node.js:
$ nvm install v14.15.4 $ node -v v14.15.4
Полную справку по работе с nvm смотрите на сайте разработчика https://github.com/nvm-sh/nvm
[править] Запуск приложения на примере Hello World веб-сервера
1. В домашнем каталоге создайте папку для вашего приложения:
$ mkdir ~/myapp
2. Создайте файл main.js такого содержания:
const http = require('http'); const hostname = 'IP адрес домена или имя домена'; const port = ваш_порт; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
Порт необходимо взять из кабинета со страницы HTTP службы и подставить своё значение.
3. Чтобы отключить автоматический запуск приложения службами хостинга, создайте файл:
$ touch ~/.1gb_services/node/no-auto-start
4. Запуск:
~/myapp $ node main.js
Откройте ваш сайт в браузере, вы должны увидеть надпись "Hello World".
[править] Запуск приложения в режиме службы
Вы можете самостоятельно управлять запуском сервера или использовать для этого диспетчер хостинга, который будет следить за тем, чтобы ваше приложение было всегда запущено в фоновом режиме.
1. Убедитесь, что удалён файл, управляющий автозапуском:
$ rm -f ~/.1gb_services/node/no-auto-start
2. Отредактируйте файл ~/conf.d/node
, где
NODE_DIR="имя каталога приложения" NODE_START="команда запуска приложения"
Для веб-сервера "Hello World" из примера выше, файл ~/conf.d/node
будет выглядеть следующим образом:
NODE_DIR="myapp" NODE_START="node main.js"
3. Запуск:
$ ~/init.d/node start
4. Для решения проблем используйте лог-файл запуска сервера приложения ~/logs_node/node.log