Node.js to Debian 11

🧱 1. Установка Node.js (Debian 11)

✅ Рекомендуемый способ (NodeSource LTS)

 
 
sudo apt update
sudo apt install -y curl ca-certificates gnupg
 

Добавляем репозиторий Node.js (LTS)

👉 лучше брать 20.x (актуально сейчас)

 
 
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
 

Установка Node.js

 
 
sudo apt install -y nodejs
 

Проверка

 
 
node -v
npm -v
 

🧱 2. Установка Yarn (если нужно)

 
 
npm install -g yarn
 

🧱 3. (Опционально) NVM — если хочешь переключать версии

 

Активировать:

 
 
source ~/.bashrc
 

📦 4. Переход в твой проект

 
 
cd /opt/integrations/app/src/providers/novofon
 

🧾 5. Инициализация проекта

 
 
npm init -y
 

🎭 6. Установка Playwright

 
 
npm install playwright
 

🌐 7. Установка браузеров

 
 
npx playwright install chromium
 

👉 (можно также: firefox, webkit)


🚀 8. Запуск твоего теста

 
 
node test_novofon.js
 

⚠️ ВАЖНО (частая ошибка на серверах)

Если получишь ошибки типа:

 
 
Error: failed to launch browser
 

👉 нужно поставить зависимости:

 
 
sudo npx playwright install-deps
 

или вручную:

 
 
sudo apt install -y \
libnss3 \
libatk1.0-0 \
libatk-bridge2.0-0 \
libcups2 \
libxkbcommon0 \
libxcomposite1 \
libxdamage1 \
libxfixes3 \
libxrandr2 \
libgbm1 \
libgtk-3-0
 

📁 9. Как правильно запускать твой файл

Ты сказал:

 
 
/opt/integrations/app/src/providers/novofon/test_novofon.js
 

👉 тогда:

 
 
node /opt/integrations/app/src/providers/novofon/test_novofon.js
 

🧪 10. Рекомендуемая структура теста (чтобы не ломалось)

 
 
const { chromium } = require('playwright');

(async () => {
const browser = await chromium.launch({
headless: true
});

const context = await browser.newContext({
userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)',
extraHTTPHeaders: {
referer: 'https://yandex.ru/search/'
}
});

const page = await context.newPage();

await page.goto('https://savastroy.ru', {
waitUntil: 'networkidle'
});

await page.waitForTimeout(4000);

const phone = await page.$eval('#dct-phone', el => el.outerHTML);

console.log('RESULT:', phone);

await browser.close();
})();
 
 
2026안정적인 CORE