Деплой статического сайта на VPS с nginx и Let’s Encrypt SSL занимает 15 минут через GitHub Actions. Вам понадобятся: VPS с Ubuntu, домен, SSH-ключ и 3 файла конфигурации.
Пошаговая инструкция
Шаг 1: Настройка VPS и nginx
Установите nginx, настройте конфигурацию для статической раздачи из /var/www/site/current. Пропишите домен в server_name.
Шаг 2: Let’s Encrypt SSL
certbot --nginx -d your-domain.com — автоматический выпуск и автообновление сертификата.
Шаг 3: GitHub Actions workflow
Создайте .github/workflows/deploy.yml с шагами: checkout → npm ci → npm run build → rsync на VPS.
Шаг 4: Secrets и переменные
Добавьте переменные хоста, пользователя и SSH-ключа в GitHub Secrets. Никогда не коммитьте ключи.
FAQ
Какие минимальные требования к VPS?
Ответ: Ubuntu 22.04+, 512MB RAM, 10GB SSD. Стоимость от $3.5/мес (Hetzner, DigitalOcean) или $40/год (Beget Cloud). Этого достаточно для статического сайта с TTFB ≤200ms.