Что такое деплой и почему без него проект видишь только ты
Claude Code собрал тебе сайт или бота, всё открывается и работает. Но это работает только на твоём компьютере. Разберёмся, почему так и что с этим делать.
Когда ты запускаешь проект командой вроде npm run dev и открываешь его по адресу localhost:3000, происходит вот что: твой собственный компьютер на несколько минут превращается в маленький сервер. Он показывает страницу только внутри себя, самому себе. Как только ты выключишь компьютер или закроешь терминал, сервер исчезнет, и адрес перестанет открываться, причём не только у тебя, но и у любого, кому ты его отправишь.
Деплой (от английского deploy, «развернуть») - это перенос готового проекта на другой компьютер, который включён постоянно и подключён к интернету. После этого проект открывается не только у тебя, а у любого человека с ссылкой, в любое время суток, независимо от того, работает твой ноутбук или лежит выключенный в сумке.
Статический сайт и постоянно работающий бот - это разные истории
Прежде чем искать, куда выкладывать проект, важно понять, какой он вообще. От этого зависит, что тебе подойдёт.
Есть два принципиально разных случая, и новички часто путают их между собой.
Статический сайт
Лендинг, портфолио, визитка. Набор готовых HTML, CSS и JS файлов, которые не меняются сами по себе и не обращаются к базе данных на сервере. Для такого подходят бесплатные хостинги вроде Netlify, Vercel или GitHub Pages.
Бот или сервис с бэкендом
Telegram-бот, сайт с личным кабинетом, что-то с базой данных и приёмом оплаты. Такой программе нужно работать круглосуточно и постоянно что-то обрабатывать, поэтому ей нужен настоящий сервер, а не просто хранилище файлов.
Если не уверен, к какому типу относится твой проект, спроси об этом самого Claude Code: «Это статический сайт или ему нужен постоянно работающий сервер?». Агент честно скажет, потому что видит структуру проекта и знает, есть ли там база данных, обработчики запросов или что-то, что должно работать без остановки.
Куда выкладывать: бесплатный хостинг или сервер
Для двух типов проектов из предыдущего шага подойдут разные варианты размещения.
Для статического сайта. Netlify, Vercel и GitHub Pages дают бесплатный тариф, которого хватает для личного проекта. Обычно процесс выглядит так: ты подключаешь свой репозиторий на GitHub, сервис сам собирает и публикует сайт, а дальше каждое обновление кода публикуется заново после команды загрузить изменения. Домен и постоянное включение сервера при этом не нужны, сервис сам держит сайт доступным.
Для бота или сервиса с бэкендом. Здесь понадобится VPS, виртуальный сервер, который можно арендовать у хостинг-провайдера. По сути это чужой компьютер, включённый круглосуточно, доступ к которому ты получаешь по подписке. На него переносится код проекта, там же он запускается и продолжает работать без твоего участия.
- Реши, статика это или сервис с бэкендом (шаг 2 этого гайда)
- Для статики - завести аккаунт на Netlify или Vercel и подключить репозиторий
- Для сервиса - арендовать самый простой VPS тариф, дороже не нужно для первого проекта
- Попросить Claude Code подготовить проект к публикации и объяснить шаги под конкретный сервис
- Проверить результат по ссылке с другого устройства, а не только с того, где всё разрабатывалось
А домен обязательно покупать сразу?
Короткий ответ: нет, домен можно отложить и запустить проект без него.
После деплоя на бесплатный хостинг или на VPS у проекта уже есть рабочий адрес, просто не такой красивый: что-то вроде твой-проект.netlify.app у хостинга для статики или числовой IP-адрес у сервера. Этого достаточно, чтобы проект открылся у любого человека и полноценно работал.
Домен, то есть привычный адрес вида твой-проект.ru, покупается отдельно у регистратора доменных имён и подключается через настройку DNS, записи, которые говорят интернету, на какой сервер вести посетителей по этому адресу. Это отдельный шаг, который логично делать, когда проект уже работает и ты понимаешь, что он тебе нужен всерьёз, а не на один вечер.
Частые проблемы при первом деплое
Почти у всех первый деплой проходит не идеально с первого раза. Вот что обычно случается и как это читать.
| Что видишь | Что это значит |
|---|---|
| После изменения настроек ничего не поменялось | Сервис или сервер не перезапустился сам. Изменения в конфигурации почти всегда требуют ручного перезапуска, это нормальная часть процесса, а не баг. |
| Ошибка про занятый порт | Какая-то программа уже использует этот адрес. Обычно достаточно закрыть старый процесс или попросить агента запустить на другом порту. |
| Локально работает, а после публикации нет | Часто дело в переменных окружения: ключи и настройки, которые были только на твоём компьютере, не перенеслись на сервер. Их нужно добавить отдельно в настройках хостинга. |
| Сайт открывается, но без стилей или картинок | Обычно проблема в путях к файлам, которые правильно работали локально, но не совпадают со структурой на сервере. |
Если что-то не получается, самый рабочий способ - показать Claude Code точный текст ошибки и спросить, что она значит и что делать. Деплой почти всегда решается пошагово, а не одним махом, и это касается даже опытных разработчиков, а не только новичков.