Код приложения уже лежит на компьютере и работает через localhost, но друзьям такую ссылку не отправишь. Чтобы проект открывался круглосуточно по обычному адресу, его нужно разместить на компьютере, постоянно подключённом к интернету, — на хостинге.
Timeweb Cloud позволяет сделать это внутри российского облака. Разберём, какой сервис выбрать, как опубликовать «Змейку» с Supabase и где начинается администрирование сервера.
Содержание
- Что такое Timeweb Cloud простыми словами
- Почему новичку из РФ важен российский хостинг
- Что выбрать для первого приложения: App Platform или VPS
- Timeweb Cloud, Amvera, DigitalOcean и GitHub Pages: сравнение
- Как выглядит деплой «Змейки» с Supabase
- VPS для новичка: когда нужен свой сервер
- S3 Timeweb Cloud для картинок и файлов
- Домен и DNS: как связать имя с сервером
- Сколько стоит Timeweb Cloud
- Типичные ошибки новичка на облачном сервере
- Практический выбор для первого запуска
- Частые вопросы
- Что запомнить
Что такое Timeweb Cloud простыми словами
Timeweb Cloud — российская облачная платформа, на которой можно арендовать вычислительные ресурсы и готовые инфраструктурные сервисы. Физические компьютеры стоят в дата-центрах провайдера, а ты управляешь своей частью инфраструктуры через панель, команды или программный интерфейс.
У облачных данных всегда есть физическое место хранения: диски и серверы в конкретном дата-центре. Провайдер содержит оборудование и выдаёт клиентам нужные ресурсы по запросу, поэтому тебе не приходится держать собственный сервер в офисе.
В экосистеме Timeweb Cloud разные задачи решают разные продукты:
- облачные серверы и VPS дают виртуальный компьютер с процессором, оперативной памятью, диском, операционной системой и IP-адресом;
- App Platform принимает исходный код из git-репозитория, собирает приложение и запускает его без ручной настройки операционной системы;
- облачные базы данных позволяют пользоваться PostgreSQL, MySQL и другими системами управления данными без самостоятельной установки на VPS;
- S3-хранилище предназначено для картинок, документов, архивов и других файлов;
- домены и DNS связывают понятное имя вроде
my-snake.ruс техническим адресом приложения; - почта для домена позволяет завести адреса вида
support@my-snake.ru;
Для первой версии обычно достаточно App Platform или VPS. Домен, S3 и отдельную базу подключай, когда для них появится конкретная задача.
Чем облако отличается от обычного виртуального хостинга
Обычный виртуальный хостинг — это готовое место прежде всего для сайтов. Провайдер заранее установил веб-сервер, PHP, панель управления и часто базу данных. Клиент получает свою папку и ограниченный набор возможностей. Это удобно для WordPress или простой страницы компании.
У виртуального хостинга есть естественные границы. Ты обычно не можешь установить произвольную системную программу, запустить постоянного Telegram-бота, поднять несколько Docker-контейнеров или свободно изменить сетевые настройки. Приложение должно вписываться в окружение, которое подготовил провайдер.
Облачный VPS работает иначе. Это отдельная виртуальная машина, где у тебя есть административный доступ. Можно установить Node.js, Python, Docker, базу данных, обработчик фоновых задач и почти любое серверное программное обеспечение. Вместе со свободой приходит ответственность: обновления, firewall, резервные копии и восстановление после сбоя становятся твоей задачей.
App Platform занимает промежуточное положение. Она даёт больше свободы, чем классический timeweb хостинг, потому что разворачивает приложение из исходного кода и поддерживает современные среды запуска. Но операционную систему и большую часть инфраструктуры обслуживает платформа. Такой формат часто называют PaaS — «платформа как сервис».
Разница — в уровне управления:
- на виртуальном хостинге ты управляешь файлами сайта и настройками, которые разрешила панель;
- на App Platform ты управляешь кодом, сборкой, запуском и переменными приложения;
- на VPS ты управляешь ещё и операционной системой, сетью и установленными программами;
Для проекта, который написал Claude Code, вопрос звучит не «что мощнее», а «какой уровень ответственности мне сейчас нужен». Самый гибкий вариант не всегда самый подходящий для первого запуска.
Почему новичку из РФ важен российский хостинг
Российский хостинг удобен не из-за одного технического параметра. Он убирает сразу несколько бытовых препятствий, которые особенно заметны, когда ты впервые публикуешь приложение.
Оплата без зарубежной карты
Timeweb Cloud принимает оплату российскими картами и работает в рублях. Не нужно искать зарубежную карту, следить за конвертацией валюты или строить критичную инфраструктуру на способе оплаты, который может перестать работать.
Условия оплаты меняются, поэтому перед заказом проверь доступные способы в официальной панели. Это относится и к российским, и к зарубежным провайдерам. Стабильный способ пополнения важнее небольшой разницы в месячной стоимости: неоплаченный сервер могут остановить, а приложение станет недоступно.
Поддержка на русском языке
При первой публикации вопросы редко формулируются профессионально. Ты видишь «сайт не открывается», а причина может быть в DNS, сертификате, порте, команде запуска или переменной окружения. Русскоязычной поддержке проще передать симптомы и понять ответ без перевода сетевых терминов.
Поддержка отвечает за платформу, но не обязана исправлять твой код. Ошибку зависимости или адреса Supabase лучше показать Claude Code, а проблему с созданием ресурса, оплатой или привязкой домена — провайдеру.
Серверы в России
У Timeweb Cloud есть российские площадки, а также зарубежные локации. При создании ресурса нужно сознательно выбрать российский регион, если физическое размещение данных в РФ имеет значение. Российское происхождение компании не означает, что любой заказанный у неё сервер автоматически находится в России.
Близкий к пользователям дата-центр обычно сокращает сетевую задержку. Для браузерной игры разница невелика, но для API, базы и частых запросов география становится ощутимее.
Требования 152-ФЗ
Федеральный закон № 152-ФЗ регулирует обработку персональных данных. Часть 5 статьи 18 устанавливает правило локализации: при сборе персональных данных граждан РФ определённые операции с ними должны выполняться с использованием баз данных на территории России, кроме предусмотренных законом исключений. Актуальную редакцию можно проверить в тексте статьи 18 закона № 152-ФЗ.
Персональными данными могут быть не только паспорт и телефон. Имя, email, идентификатор аккаунта и другие сведения, которые прямо или косвенно относятся к человеку, тоже могут попасть в эту категорию. Конкретная оценка зависит от того, какие данные собирает приложение и как они связаны между собой.
Российский сервер помогает выполнить требование о месте размещения базы, но не закрывает весь закон автоматически. Владелец приложения также определяет цели обработки, правовое основание, сроки хранения, меры защиты, порядок удаления и круг сервисов, которым передаются данные. Иногда требуется уведомить Роскомнадзор, оформить документы и проверить договоры с подрядчиками.
Особенно внимательно посмотри на связку российского фронтенда и зарубежной базы. Если «Змейка» опубликована в российском облаке, но аккаунты и таблица результатов хранятся в зарубежном проекте Supabase, сами персональные данные от этого не перемещаются в Россию. Место фронтенда и место базы — разные вещи.
Это обзор, а не юридическая консультация. Для проекта с регистрацией прочитай материал «152-ФЗ для владельца приложения» и при необходимости обратись к специалисту. ИИ может собрать перечень вопросов и данных, но не вынести окончательный юридический вердикт.
Что выбрать для первого приложения: App Platform или VPS
Для первой публикации чаще подходит Timeweb Cloud Apps, то есть App Platform. Она получает код из репозитория, устанавливает зависимости, выполняет команду сборки и размещает результат. Ты работаешь с проектом, а не с настройкой Linux.
VPS нужен, когда приложение не помещается в модель готовой платформы или тебе требуется полный контроль над средой. На старте этот контроль может оказаться не преимуществом, а дополнительным источником ошибок.
| Критерий | App Platform | VPS |
|---|---|---|
| Что ты получаешь | Готовую среду для сборки и запуска приложения | Виртуальный компьютер с операционной системой |
| Как попадает код | Платформа забирает его из git-репозитория | Ты настраиваешь доставку сам: git, CI/CD, архив или образ Docker |
| Кто обновляет систему | Провайдер обслуживает базовую платформу | Ты обновляешь ОС и установленные пакеты |
| Нужны ли SSH и Linux | Обычно нет для повседневного деплоя | Да, хотя бы на базовом уровне |
| Настройка сети | Большая часть скрыта за платформой | Порты и firewall настраиваешь сам |
| Свобода установки | Ограничена поддерживаемыми средами и контейнерами | Почти полная в пределах ресурсов сервера |
| Типичные задачи | Сайт, API, небольшое fullstack-приложение, тестовая версия продукта | Бот, несколько контейнеров, фоновые процессы, нестандартное ПО |
| Риск ошибки новичка | Ниже | Выше |
Когда выбирать App Platform
Выбирай готовую платформу, если выполняются три условия:
- Код уже хранится в GitHub, GitLab или другом доступном git-репозитории.
- Приложение собирается стандартной командой и не требует необычных системных компонентов.
- Тебе нужен публичный сайт или API, а изучение администрирования пока не является целью.
App Platform особенно удобна для фронтенда «Змейки». Платформа может пересобирать проект после обновления репозитория, хранить переменные окружения и выдать технический адрес для проверки. Позже к приложению подключается собственный домен.
Платформа не исправляет код: в репозитории всё равно нужны корректные зависимости, команда сборки и настройки. Зато вместо системных задач ты разбираешь один журнал сборки и запуска.
Когда выбирать VPS
Timeweb Cloud VPS разумнее, если тебе нужны:
- несколько связанных сервисов в Docker Compose;
- постоянно работающий бот или обработчик очереди;
- системная программа, которой нет в готовой среде;
- особые правила сети или собственный обратный прокси;
- полный контроль над версиями пакетов и расположением файлов;
- практика работы с Linux и готовность обслуживать сервер дальше.
Не бери VPS только потому, что слово «сервер» звучит серьёзнее. Если задача решается на App Platform, ты быстрее получишь ссылку и оставишь меньше мест для ошибки. Перенести проект можно позже.
Timeweb Cloud, Amvera, DigitalOcean и GitHub Pages: сравнение
Эти варианты нельзя сравнивать только по цене: они решают пересекающиеся, но не одинаковые задачи. GitHub Pages публикует статические файлы. Amvera и App Platform Timeweb Cloud разворачивают приложение из кода. DigitalOcean предлагает зарубежную облачную инфраструктуру, включая виртуальные серверы и платформенные сервисы.
| Сервис | Где серверы | Оплата из РФ | Нужно ли администрировать | Для чего подходит |
|---|---|---|---|---|
| Timeweb Cloud | Есть российские и зарубежные локации; нужный регион выбирается для конкретного ресурса | Российская карта и расчёты в рублях поддерживаются | На App Platform — обычно нет; на VPS — да | Фронтенд, API, бот, база, S3, проект с потребностью в российской инфраструктуре |
| Amvera | Есть регионы в России и за рубежом | Сервис ориентирован в том числе на оплату из РФ; доступный способ лучше проверить перед пополнением | Обычно нет: приложение собирается и запускается платформой | Боты, сайты и приложения с простым деплоем через git |
| DigitalOcean | Зарубежные регионы; российской площадки нет | Обычная карта российского банка может не подойти; условия и ограничения нужно проверять до переноса проекта | На Droplet — да; на App Platform — в меньшей степени | Зарубежный VPS, международный проект, инфраструктура для тех, кому подходит зарубежная оплата |
| GitHub Pages | Глобальная инфраструктура GitHub, без выбора российского региона для обычного проекта | Для публичного статического сайта отдельная оплата хостинга обычно не нужна; условия аккаунта и тарифов могут меняться | Нет | Статические HTML, CSS и JavaScript без собственного постоянно работающего сервера |
Если «Змейка» состоит из HTML, CSS и JavaScript, а Supabase предоставляет отдельную базу и авторизацию, GitHub Pages может быть достаточен для учебной публикации. Он не запускает произвольный серверный процесс: код страницы загружается в браузер пользователя, а запросы идут напрямую во внешний API.
Если нужен российский регион, единая панель для сервера, файлов и домена или возможность перейти от готового деплоя к своему VPS, Timeweb Cloud даёт более широкий путь роста. Сравнение с другой российской платформой разобрано в материале «Деплой на Amvera для новичка», а зарубежный вариант — в статье «DigitalOcean: зарубежный VPS».
Перед выбором проверь, где будет находиться каждый вид данных, чем оплачивается сервис, умеет ли платформа запускать твой стек и кто устраняет сбои.
Как выглядит деплой «Змейки» с Supabase
Путь публикации удобно разделить на четыре части: репозиторий, подключение к платформе, конфигурация и публичный адрес. Названия экранов и кнопок со временем меняются, поэтому ниже дана логика процесса, а не инструкция по конкретной версии панели.
1. Репозиторий на GitHub
Рабочая версия «Змейки» должна быть сохранена в git и отправлена в репозиторий GitHub. Репозиторий — это не просто папка в интернете: он хранит историю изменений и даёт платформе однозначный источник кода.
Перед деплоем попроси Claude Code проверить проект:
Проверь проект перед публикацией на App Platform. Определи команду
установки зависимостей, команду сборки, папку с готовым фронтендом
и нужную версию Node.js. Ничего не меняй, сначала дай отчёт.
Проверь, что локальная сборка проходит, а в git не попали .env, пароли, закрытые ключи и служебные файлы редактора.
2. Подключение репозитория к платформе
На Timeweb Cloud Apps создаётся приложение, которому разрешают читать выбранный репозиторий. Платформе также нужны ветка, среда запуска и команды проекта. Для обычного фронтенда это, как правило, установка зависимостей, сборка и папка результата.
Не копируй команду из случайной статьи. У проектов на Vite, Next.js и других инструментах различаются сценарии сборки и структура папок. Правильный источник — файл package.json и документация самого проекта. Claude Code может прочитать их и назвать параметры без догадок.
После запуска платформа забирает код, создаёт изолированное окружение и пишет ход сборки в лог. Если деплой завершился ошибкой, скопируй фрагмент от первой ошибки до конца и попроси ИИ найти первопричину. Удали из лога токены и пароли.
3. Переменные окружения
Переменные окружения — настройки, которые приложение получает во время сборки или запуска, но которые не обязаны быть записаны прямо в исходном коде. Для «Змейки» с Supabase это могут быть адрес проекта и публичный ключ клиента. Точные имена зависят от того, как приложение их читает.
Условный файл локальной разработки выглядит так:
VITE_SUPABASE_URL=https://project.example
VITE_SUPABASE_ANON_KEY=public-client-key
Этот пример показывает формат, а не реальные значения. Файл .env не следует коммитить в публичный репозиторий. Значения переносятся в защищённые настройки платформы, а их названия должны совпадать с кодом.
У фронтенда есть особенность: всё, что браузер получает для работы страницы, пользователь технически может увидеть. Публичный клиентский ключ Supabase не должен давать неограниченный доступ сам по себе; безопасность обеспечивают правила доступа к таблицам. Сервисный ключ с расширенными правами нельзя помещать во фронтенд ни через .env, ни другим способом.
Попроси ИИ найти все переменные окружения, разделить публичные клиентские настройки и секреты и проверить, что сервисные ключи не попадают в сборку браузера. Значения переменных показывать ему не нужно.
4. Домен и SSL
После успешной сборки приложение получает технический адрес. Сначала проверь по нему главную страницу, запуск игры, вход, запись результата и загрузку после обновления браузера. Лишь затем подключай собственный домен: так проще отличить ошибку приложения от ошибки DNS.
SSL-сертификат включает HTTPS — защищённое соединение между браузером и сайтом. Для собственного домена платформа может выпускать и продлевать сертификат автоматически, если DNS настроен правильно. Что именно защищает сертификат и почему замок в браузере не доказывает честность сайта, объясняет статья «SSL-сертификат простыми словами».
Полезная проверка после деплоя:
- технический адрес открывается без предупреждений;
- игра работает в новом приватном окне, где нет старых данных браузера;
- сетевые запросы к Supabase не падают;
- новый результат появляется в нужной таблице;
- в консоли браузера нет ошибок с переменными;
- собственный домен открывает ту же версию;
- адрес начинается с
https://, а сертификат относится к твоему домену; - обновление страницы на внутреннем маршруте не приводит к ошибке, если приложение использует маршрутизацию.
Публикация фронтенда не переносит Supabase, его таблицы и пользователей. Timeweb Cloud отдаёт файлы приложения, а Supabase обрабатывает авторизацию и данные. При сбое проверяй их раздельно.
VPS для новичка: когда нужен свой сервер
VPS расшифровывается как Virtual Private Server — виртуальный частный сервер. На одном физическом компьютере работают несколько изолированных виртуальных машин, но твоя машина имеет собственную операционную систему, выделенные ресурсы и настройки.
Timeweb Cloud сервера подходят не только для сайтов. На VPS можно запустить Telegram-бота, API, планировщик, обработчик очереди, собственную базу или несколько контейнеров Docker. Сервер продолжает работать, когда твой ноутбук выключен.
Когда VPS оправдан
Свой сервер становится полезен, если проекту нужен постоянный процесс. Например, бот ждёт новые сообщения, фоновая задача каждый час формирует отчёт, а обработчик изображений забирает задания из очереди. Статический хостинг такие процессы не держит.
Docker тоже часто приводит к VPS. Контейнер упаковывает приложение и зависимости, а Docker Compose позволяет описать несколько связанных сервисов. Контейнеры не отменяют защиту и обновление самого сервера.
Первые действия после создания VPS
Конкретные команды зависят от дистрибутива Linux и архитектуры проекта. Ниже — базовая последовательность для распространённого сервера на Ubuntu, а не универсальный рецепт.
Войти по SSH
SSH — защищённый способ открыть терминал удалённого сервера. Подключение выглядит так:
ssh username@server-ip
username — имя пользователя, а server-ip — публичный IP сервера. Лучше входить по SSH-ключу, а не по постоянному паролю. Закрытый ключ остаётся на твоём компьютере и никому не отправляется; на сервер копируется только публичная часть.
Перед изменением SSH-настроек открой второе соединение и не закрывай первое: ошибка может запереть тебя снаружи.
Обновить пакеты
Для Ubuntu базовое обновление начинается так:
sudo apt update
sudo apt upgrade
Первая команда обновляет сведения о пакетах, вторая устанавливает обновления. Прочитай список перед подтверждением: некоторые изменения требуют перезапуска служб или сервера.
Настроить firewall
Firewall, или межсетевой экран, решает, какие входящие соединения разрешены. Для начала обычно оставляют SSH и публичные веб-порты. На Ubuntu с UFW общий принцип выглядит так:
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status
Порт 80 используется для HTTP, 443 — для HTTPS. Порт базы данных не нужно открывать всему интернету, если к ней обращается только приложение на том же сервере или в приватной сети. Перед включением UFW обязательно разреши SSH, иначе можно потерять удалённый доступ.
Облачный firewall в панели и UFW внутри Linux — два отдельных слоя. Запрос должен пройти через оба.
Установить только нужное
Дальше набор зависит от архитектуры: Docker, Node.js, менеджер процессов, Nginx или другой обратный прокси. Не устанавливай всё сразу «на будущее». Чем больше служб, тем больше обновлений, портов и журналов приходится контролировать.
Обычно приложение слушает внутренний порт, а Nginx или другой прокси принимает HTTP и HTTPS. База доступна только из доверенной сети, а секреты хранятся вне репозитория.
Что можно поручить Claude Code
ИИ хорошо помогает, когда получает точные входные данные и обязан объяснить последствия. Например:
Составь план безопасного деплоя этого Node.js-приложения на чистую Ubuntu.
Используй Docker Compose и обратный прокси. Сначала перечисли нужные порты,
тома, переменные, резервные копии и способ отката. Команды пока не выполняй.
После плана проси создавать конфигурацию по одному файлу и проверять её штатными командами. Уточни:
- какие порты должны быть публичными, а какие только внутренними;
- где будут храниться данные и логи;
- как сделать резервную копию и восстановиться из неё;
- как откатить неудачный релиз.
Не вставляй в чат закрытый SSH-ключ, пароль базы или содержимое рабочего .env. ИИ достаточно имён переменных и замаскированных примеров. Команды удаления, изменения firewall и SSH требуют отдельной ручной проверки.
S3 Timeweb Cloud для картинок и файлов
S3 — объектное хранилище. Оно похоже на большую систему контейнеров с файлами, к которой приложение обращается через интернет по стандартному протоколу. Контейнер называется бакетом, а каждый файл внутри — объектом.
S3 Timeweb Cloud подходит для аватаров, скриншотов, изображений товаров, аудио, документов, архивов и резервных копий. Оно не заменяет обычную базу данных: таблицу пользователей удобнее хранить в PostgreSQL, а загруженные ими фотографии — в S3. В базе остаются имя файла, владелец, тип и ссылка или идентификатор объекта.
Хранить загрузки на диске приложения рискованно: платформа может пересобрать контейнер, а несколько копий приложения имеют разные диски. S3 отделяет файлы от жизненного цикла сервера.
Бакет может быть публичным или приватным. Публичный подходит для материалов, которые разрешено видеть всем: обложек, общих картинок, открытых файлов сайта. Приватный нужен для личных документов и закрытых вложений. Доступ к ним приложение выдаёт после проверки пользователя, часто через временную подписанную ссылку.
Ключи доступа к S3 нельзя помещать во фронтенд или публичный репозиторий. Загрузку организуют через сервер приложения или ограниченный механизм временного доступа.
Для «Змейки» S3 понадобится не сразу. Встроенные скины и звуки можно хранить вместе с кодом, пока файлов мало. Хранилище становится полезным, если пользователи загружают аватары, редактор создаёт новые наборы графики или размер медиатеки начинает раздувать репозиторий и сборку.
Подробности о бакетах, правах доступа и структуре файлов собраны в статье «S3-хранилище файлов приложения». Перед подключением ответь на три вопроса: кто загружает файл, кто имеет право его читать и что должно произойти при удалении аккаунта.
Домен и DNS: как связать имя с сервером
Домен — читаемое имя сайта, например snake-example.ru. Серверы общаются по IP-адресам, а DNS переводит доменное имя в нужный технический адрес. Эту систему можно сравнить со справочником контактов: человек выбирает имя, а устройство получает номер для соединения.
A-запись — одна из записей DNS. Она говорит: «это доменное имя ведёт на такой IPv4-адрес». Для VPS смысл записи выглядит так:
snake-example.ru -> 203.0.113.10
Адрес в примере зарезервирован для документации и не является адресом твоего сервера. В реальной A-записи указывают публичный IPv4, выданный облаком.
Поддомен www.snake-example.ru — отдельное имя. Для него создают свою A-запись или CNAME, который ссылается на другое доменное имя.
При использовании App Platform собственный домен часто связывается не с VPS напрямую, а с адресом, который показывает платформа. Следуй актуальной подсказке сервиса и не копируй чужой IP: инфраструктура платформы может отличаться от обычного виртуального сервера.
Почему изменения DNS видны не сразу
Ответы DNS временно кэшируются. После изменения записи часть пользователей может видеть старый адрес, а часть — новый. Частые повторные правки только усложняют диагностику.
Проверяй цепочку по порядку:
- У регистратора домена указаны правильные DNS-серверы.
- В нужной DNS-зоне создана запись для корневого домена и, при необходимости,
www. - Запись возвращает адрес твоего сервера или значение платформы.
- Веб-сервер знает этот домен и принимает запрос.
- SSL-сертификат выпущен именно для этого имени.
- Приложение открывается по HTTPS.
Если технический адрес работает, а домен — нет, код приложения, скорее всего, ни при чём. Если домен уже ведёт на нужный сервер, но возвращается ошибка приложения, переходи к журналам веб-сервера и процесса.
Сколько стоит Timeweb Cloud
Стоимость зависит от продукта и конфигурации. Для VPS учитываются выбранные процессор, память, диск, локация и дополнительные услуги. Для платформы приложений и S3 набор тарифицируемых ресурсов другой. Домен, резервные копии, дополнительные адреса и управляемая база могут считаться отдельно.
Точные суммы быстро устаревают, поэтому актуальные тарифы смотри на сайте сервиса. Не ориентируйся на цену из старого обзора или скриншота: продукт мог изменить линейку конфигураций и правила расчёта.
Сравнивай не только минимальную строку в прайсе, а стоимость всей рабочей схемы:
- приложение или VPS;
- база данных;
- S3 и передача файлов;
- домен;
- резервные копии;
- дополнительные IP-адреса, если они нужны;
- платное администрирование или поддержка;
- запас ресурсов на рост нагрузки.
Дешёвый сервер может оказаться дорогим, если каждую неделю отнимает несколько часов на восстановление. Готовая платформа может стоить иначе, но экономить время на обновлениях Linux и сетевой настройке. Это не обещание окупаемости: ценность времени и требования проекта у всех разные.
Как не получить неожиданный счёт
Начни с минимальной достаточной архитектуры. Не создавай запасные серверы, базы и диски без понятной задачи. После эксперимента удаляй ненужный ресурс через панель, а не только файлы внутри него: пустая виртуальная машина всё равно может тарифицироваться.
Настрой уведомления о расходах, если такая возможность доступна в текущей версии сервиса, и регулярно проверяй баланс. Не полагайся только на письмо: оно может попасть в спам. Перед удалением платного диска или базы сначала выясни, не содержит ли ресурс единственную копию данных.
Типичные ошибки новичка на облачном сервере
Большинство первых проблем связано не с мощностью машины, а с доступом, обновлениями и отсутствием плана восстановления.
Открыть лишние порты всему интернету
Публичным должен быть только тот вход, которым действительно пользуются внешние клиенты. Для сайта это обычно HTTP и HTTPS, для администрирования — защищённый SSH. База, панель мониторинга и внутренние очереди не должны без необходимости принимать соединения со всего интернета.
Не разрешай любой источник на любой порт. Если временно открыл порт для проверки, закрой его сразу после теста.
Проверяй и облачный firewall, и правила внутри ОС. Попроси ИИ объяснить каждую строку, но сверяй итоговый список командой просмотра активных правил.
Использовать пароль вместо SSH-ключа
Пароль можно подобрать, украсть при фишинге или случайно вставить в переписку. SSH-ключи устойчивее к перебору и позволяют отключить парольный вход после проверки, что ключ действительно работает.
Нельзя просто запретить пароли по совету из интернета и закрыть текущую сессию. Сначала создай отдельного пользователя, добавь его публичный ключ, проверь новое соединение и доступ к sudo. Только затем меняй политику входа.
Закрытый ключ не загружают на сервер и не отправляют ИИ. При утечке его заменяют.
Забыть про резервные копии
Снапшот сервера, резервная копия базы и копия пользовательских файлов решают разные задачи. GitHub хранит исходный код, но не вернёт свежие рекорды игроков. Снапшот машины помогает восстановить состояние диска, но может быть неудобен для восстановления одной таблицы. Репликация S3 повышает устойчивость хранилища, но не обязательно спасёт от ошибочного удаления владельцем.
Бэкап считается рабочим только после тестового восстановления.
Минимальный план отвечает на вопросы:
- какие данные нельзя воссоздать;
- как часто они меняются;
- где хранится независимая копия;
- кто заметит сбой копирования;
- сколько времени займёт восстановление;
- когда восстановление проверяли в последний раз.
Держать всё на одном сервере без мониторинга
Один VPS может быть разумным стартом, но он остаётся единственной точкой отказа. Если закончится диск, процесс упадёт или сертификат перестанет обновляться, проект исчезнет до тех пор, пока кто-то это не заметит.
Мониторинг автоматически проверяет, открывается ли сайт, отвечает ли API, хватает ли диска и памяти и не растёт ли число ошибок. Уведомление должно приходить туда, где ты его увидишь.
Не нужно сразу строить сложный кластер. Сначала признай ограничение одного сервера, настрой резервное копирование и внешнюю проверку доступности. Отказоустойчивость усложняют тогда, когда цена простоя это оправдывает.
Хранить секреты в репозитории
Удалить токен из последнего коммита недостаточно: он может остаться в истории git. Если секрет попал в публичный репозиторий, считай его скомпрометированным, отзови и выпусти новый. Затем убери значение из истории подходящим способом.
В репозитории допустимо хранить файл-пример вроде .env.example только с именами переменных:
DATABASE_URL=
S3_ACCESS_KEY=
S3_SECRET_KEY=
Рабочие значения задаются в настройках платформы или защищённом хранилище. Логи тоже не должны печатать полный адрес подключения, токен или заголовок авторизации.
Выполнять команды ИИ без чтения
Claude Code способен быстро подготовить конфигурацию, но не видит состояние сервера, если ты его не показал. Команда для Ubuntu может не подойти другому дистрибутиву, правило firewall — закрыть нужный доступ, а удаление каталога — стереть данные.
Перед выполнением спроси:
Объясни каждую команду: что она читает, что изменяет, можно ли отменить
изменение и какой результат проверки я должен увидеть. Отдельно пометь
команды, которые удаляют данные, меняют SSH или firewall.
Так ИИ остаётся исполнителем и консультантом, а не получает право принимать необратимые решения без контроля.
Практический выбор для первого запуска
Если твоя «Змейка» работает как статический фронтенд и обращается к Supabase напрямую, начни с самого простого варианта публикации. GitHub Pages уже может решать эту задачу. Переход на Timeweb Cloud нужен, когда появляется конкретное требование: российская инфраструктура, собственный серверный API, единая панель сервисов или подготовка к фоновым процессам.
Если нужен Timeweb Cloud, но не нужен Linux, выбирай App Platform. Она оставляет в твоей зоне ответственности код, команды сборки, переменные и проверку результата. Для первого деплоя это достаточно содержательный набор задач.
VPS выбирай только при наличии причины: бот, Docker Compose, фоновая задача, нестандартная программа или требование полного контроля. Сразу добавь в задачу безопасность, бэкапы и мониторинг — это часть сервера, а не необязательное улучшение после запуска.
Короткий порядок действий:
- Опиши архитектуру проекта: фронтенд, API, база, файлы и внешние сервисы.
- Отметь, где возникают персональные данные и где физически находится каждая база.
- Проверь локальную сборку и чистоту репозитория.
- Выбери App Platform или VPS по обязанностям, а не по названию тарифа.
- Создай только необходимые ресурсы в подходящем регионе.
- Перенеси переменные окружения, не раскрывая секреты.
- Проверь технический адрес и основные сценарии.
- Подключи домен, DNS и HTTPS.
- Настрой бэкап, мониторинг и контроль расходов.
- Запиши способ обновления и отката, чтобы следующий деплой не был импровизацией.
Готовность проекта определяется не красивой главной страницей панели, а воспроизводимым процессом: новый коммит публикуется, ошибка видна в логе, секреты не раскрыты, данные можно восстановить, а владелец понимает, за какие части отвечает провайдер.
Частые вопросы
Timeweb Cloud и обычный Timeweb хостинг — одно и то же?
Это связанные сервисы одного провайдера, но модели размещения различаются. Обычный виртуальный хостинг рассчитан прежде всего на сайты в готовом окружении. Timeweb Cloud даёт облачные серверы, App Platform, базы, S3 и другие инфраструктурные продукты с большей гибкостью.
Что проще для новичка: Timeweb Cloud Apps или VPS?
App Platform проще, потому что не требует повседневного администрирования Linux. VPS даёт больше контроля, но ты сам отвечаешь за обновления, SSH, firewall, веб-сервер, резервные копии и мониторинг.
Можно ли разместить «Змейку» с Supabase на Timeweb Cloud?
Да. Фронтенд можно опубликовать через App Platform или VPS, а адрес и публичный клиентский ключ Supabase передать переменными окружения. При этом база Supabase остаётся отдельным сервисом в выбранном для неё регионе; публикация фронтенда не переносит данные автоматически.
Нужен ли VPS для Telegram-бота?
Не обязательно: бота может запускать платформа приложений, если она поддерживает его среду и режим работы. VPS нужен при нестандартных зависимостях, нескольких контейнерах, особой сетевой схеме или желании полностью управлять системой.
Подходит ли российский сервер для соблюдения 152-ФЗ?
Российская локация помогает выполнить требование о локализации баз персональных данных, но не гарантирует соблюдение закона целиком. Нужно учитывать состав данных, цели и основания обработки, защиту, документы и все внешние сервисы. Это вопрос для отдельной юридической оценки.
Сколько стоит Timeweb Cloud VPS?
Цена зависит от процессора, памяти, диска, региона и дополнительных услуг. Актуальные тарифы смотри на сайте сервиса и считай полную схему вместе с базой, хранилищем, доменом и резервными копиями.
Что запомнить
Timeweb Cloud — не один вид хостинга, а набор сервисов. App Platform подходит для первого деплоя из git без настройки сервера, Timeweb Cloud VPS — для ботов, Docker, фоновых задач и полного контроля, а S3 — для файлов, которые не должны жить на диске приложения.
Начинай с самой простой архитектуры, которая решает текущую задачу. Российская оплата, поддержка и выбор серверов в РФ снимают часть барьеров, но не отменяют проверку безопасности и требований к персональным данным. Публичная ссылка — только начало эксплуатации: рабочий проект ещё нужно обновлять, наблюдать и уметь восстанавливать.
Читай дальше
Все статьиНе просто статьи — тебя доведут до результата
В практикуме за 2499 ₽ рядом живая команда практикующих разработчиков и маркетологов: ведём по шагам до твоего работающего приложения. Не «ролики и сам разбирайся» — помогаем на каждом затыке.
Перейти к практикуму