Node.js
Введение
Node.js — это серверная платформа, которая запускает приложения, написанные на JavaScript.
Сначала необходимо установить Node.js:
- Перейдите в "Настройки" -> "Приложения"

- Нажмите кнопку "Установить" для нужной версии Node.js

Создайте веб-сайт:
- Выберите шаблон для веб-сайта Node.js

- Укажите домен и связанные параметры. На этапе конфигурации вы можете изменить БД, FTP-пользователя и Backend

- Загрузите файлы приложения в директорию веб-сайта
- Чтобы установить зависимости, выполните
npm20.15.1 installв Terminal (необходимо установить приложение ttyd для FASTPANEL®)

- Перезапустите Node.js, перейдя в карточку сайта и затем открыв раздел "Сервисы".

Фреймворк Express
На примере фреймворка Express создадим простой веб-сервер:
- Подключитесь к серверу по SSH от имени пользователя, которому принадлежит сайт (можно использовать приложение ttyd для FASTPANEL®)
- Создайте файл
app.jsв директории веб-сайта и заполните его следующим кодом:
const express = require('express');
const app = express();
const PORT = process.env.SERVICE_PORT;
app.get('/', (req, res) => {
res.send('Hello! This is my first server on Node.js + Express 🚀');
});
app.listen(PORT, () => {
console.log(`Server is running at http://localhost:${PORT}`);
});
- В директории веб-сайта выполните команду для установки express
npm20.15.1 install express
- Перейдите в карточку сайта, затем в раздел Сервисы
- Перезапустите сервис
- Проверьте веб-сайт
Docusaurus
На примере веб-приложения Docusaurus настроим параметры:
- Подключитесь к серверу по SSH от имени пользователя, которому принадлежит сайт (можно использовать приложение ttyd для FASTPANEL®)
- В директории веб-сайта запустите установку Docusaurus
npx20.15.1 create-docusaurus -j ./docs
-
Когда будет предложено выбрать шаблон, ответьте classic (recommended)
-
После установки замените одну строку в файле
docs/package.json
"start": "docusaurus start",
# replace with
"start": "docusaurus start --port $SERVICE_PORT",
$SERVICE_PORT — это системная переменная, заданная в FASTPANEL®
-
В панели управления перейдите в "настройки сайта" -> "Backend"
-
Выберите обработчик Standalone или PM2.
-
Выберите нужную версию Node.js.
-
Укажите рабочую папку
docs -
В поле команды запуска введите:
npm run start -
Сохраните. Дождитесь компиляции приложения (информация появится в логах). Проверьте веб-сайт
Next.js
Используя Next.js с Node.js 20.19 в качестве примера, создадим простой веб-сервер:
- Подключитесь к с ерверу по SSH от имени пользователя, которому принадлежит веб-сайт (вы также можете использовать приложение ttyd в FASTPANEL®).
- В директории веб-сайта выполните команду инициализации проекта:
yarn20.19.4 init -y
yarn20.19.4 add next react react-dom
- Добавьте блок scripts в файл
package.json:
"scripts": {
"dev": "next dev -p $SERVICE_PORT",
"build": "next build",
"start": "next start -p $SERVICE_PORT"
}
- Создайте директорию
pagesи внутри неё добавьте файл с именемindex.js:
mkdir pages
cat <<EOF > pages/index.js
export async function getServerSideProps() {
return {
props: {
nodeVersion: process.version,
port: process.env.SERVICE_PORT || 3000,
},
};
}
export default function Home({ nodeVersion, port }) {
return (
<div style={{
fontFamily: 'sans-serif',
textAlign: 'center',
marginTop: '20vh'
}}>
<h1>✅ It works!</h1>
<p>Next.js app running on Node.js {nodeVersion}</p>
<p>Port: {port}</p>
</div>
);
}
EOF
- Запустите сборку проекта.
yarn20.19.4 build
- В панели управления перейдите в "настройки сайта" -> "Backend"
- Выберите обработчик Standalone или PM2.
- Выберите нужную версию Node.js.
- В поле команды запуска введите:
yarn run start. - Сохраните. Дождитесь компиляции приложения (информация появится в логах). Проверьте веб-сайт
Дополнительная информация
В режиме Standalone запускается процесс Node.js для выполнения ваших скриптов.
В режиме PM2 для управления процессами Node.js, логами и системной нагрузкой используется менеджер процессов PM2.
Этот режим также позволяет указать количество workers — то есть число процессов Node.js, обрабатывающих входящие запросы к серверу.
Кроме того, в этом режиме доступна опция Enable file watch — PM2 автоматически перезапускает ваше приложение при изменении файла в текущей директории или её поддиректориях. Обратите внимание, что этот режим создаёт дополнительную нагрузку на систему и не рекомендуется для production-окружений.
Аналогично можно настроить приложение, если ему требуется YARN вместо NPM
Вы можете установить зависимости вашего проекта, перечисленные в package.json, с помощью YARN или NPM напрямую из FASTPANEL®. Для этого откройте карточку веб-сайта и перейдите в раздел Сервисы:
