Systemd Unit для Node.js и Next.js (автозапуск, рестарт при падении и переменные)
Готовый файл службы systemd (.service) для Node.js / Next.js standalone: безопасный пользователь node, Restart=always, лимиты памяти и логирование в journald.
Интерактивный генератор под ваши параметры
Параметры подставляются в код в реальном времени
/etc/systemd/system/nextjs-app.service
# /etc/systemd/system/nextjs-app.service
[Unit]
Description=Next.js Web Application
After=network.target
[Service]
Type=simple
User=www-data
Group=www-data
WorkingDirectory=/var/www/example.com
Environment=NODE_ENV=production
Environment=PORT=3000
ExecStart=/usr/bin/node /var/www/example.com/server.js
Restart=always
RestartSec=5
KillMode=mixed
# Ограничения безопасности и ресурсов
LimitNOFILE=65535
MemoryMax=1.5G
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
Разбор ключевых директив конфигурации
Техническое обоснование директив и их прямое влияние на процессор (CPU), оперативную память (RAM) и дисковый ввод-вывод (NVMe I/O).
| Директива / Блок | Рекомендуемое значение | Зачем нужно и системное влияние (CPU / RAM / I-O) |
|---|---|---|
Restart=always |
always | Автоматически перезапускает приложение при непредвиденном падении процесса Node.js. |
LimitNOFILE=65535 |
65535 | Увеличивает лимит открытых файловых дескрипторов и сокетов для высоких нагрузок. |
StandardOutput=journal |
journal | Направляет весь вывод stdout и stderr в централизованный системный журнал `journalctl`. |
Рекомендуемые системные требования VDS под этот стек
Расчет минимальной и оптимальной конфигурации виртуального сервера для стабильной работы без сбоев.
Оптимальный сайзинг: 2 vCPU, 2-4 GB RAM, Node.js VDS
Timeweb Cloud
2 CPU / 4 GB NVMe
Рекомендуемые ресурсы
2 vCPU /
2-4 GB RAM /
30 GB NVMe
Selectel
2 vCPU / 4 GB RAM
Рекомендуемые ресурсы
2 vCPU /
2-4 GB RAM /
30 GB NVMe
Beget
Turbo 4 GB
Рекомендуемые ресурсы
2 vCPU /
2-4 GB RAM /
30 GB NVMe
Онлайн-утилиты SysKit для проверки этого сервера
Протестируйте корректность применения конфигурации прямо сейчас в один клик.
Частые ошибки при настройке и их решение (FAQ)
Типовые проблемы вебмастеров и сисадминов при внедрении данной конфигурации.
Как активировать службу?
Выполните: `systemctl daemon-reload && systemctl enable --now nextjs-app`.
Как посмотреть логи?
Выполните `journalctl -u nextjs-app -f`.
Рекомендуемые смежные конфигурации
Дополнительные рецепты и калькуляторы для полной оптимизации данного серверного стека.