---
title: "Как задеплоить приложение на TanStack Start в 2026"
description: "Деплой TanStack Start на Node-сервер: добавьте Nitro и скрипт start, запустите pethost deploy, и приложение в сети по HTTPS за 29 секунд — за 9,99 € в месяц."
---

[Блог](https://pethost.dev/ru/blog/) · Гайды по деплою

# Как задеплоить приложение на TanStack Start в 2026: Nitro, скрипт start и одна команда

Команда Pethost · 10 октября 2026 г. · Обновлено 25 октября 2026 г. · 8 мин чтения

У вас есть приложение на TanStack Start, и вы хотите запустить его на Node-сервере по адресу с HTTPS. Руководство TanStack по хостингу требует для этого от приложения двух вещей: плагина Nitro и скрипта `start`. Когда оба на месте, `pethost deploy` пишет Dockerfile, собирает приложение и печатает его адрес. Приложение, которое создает TanStack CLI, в первый раз собралось и запустилось за 29 секунд.

**Коротко**

- **Две вещи в приложении:** плагин Nitro, который добавляет `--deployment nitro` при создании приложения, и `"start": "node .output/server/index.mjs"` в `package.json`.
- **Одна команда:** `pethost deploy` в папке, где лежит `package.json`. Она пишет Dockerfile, который запускает `npm run build`, а затем `npm run start`.
- **Порт:** сервер Nitro слушает 3000. Pethost сам это находит и направляет туда адрес по HTTPS.
- **Неудачная сборка ничего не меняет:** предыдущая версия продолжает работать, а на экране видна ошибка сборки.
- **Цена:** 9,99 € в месяц за 2 vCPU, 3 GB и 30 GB — для этого приложения и всех остальных ваших проектов. Бесплатного тарифа нет.

## Что нужно, чтобы задеплоить приложение на TanStack Start в 2026 году

Три вещи: само приложение, команда `pethost` и аккаунт Pethost.

**Приложение** здесь — то, которое создает TanStack CLI, с Nitro в качестве цели деплоя:

```
npx @tanstack/cli@latest create my-app --deployment nitro
```

Флаг добавляет плагин Nitro в `vite.config.ts`. В уже существующее приложение добавьте его так, как написано в разделе о Nitro руководства по хостингу:

```
import { tanstackStart } from '@tanstack/react-start/plugin/vite'
import { defineConfig } from 'vite'
import { nitro } from 'nitro/vite'
import viteReact from '@vitejs/plugin-react'

export default defineConfig({
  plugins: [tanstackStart(), nitro(), viteReact()],
})
```

Затем добавьте в `package.json` скрипт, который запускает результат сборки. CLI оставляет там `build`, а `start` — нет:

```
"scripts": {
  "dev": "vite dev --port 3000",
  "build": "vite build",
  "start": "node .output/server/index.mjs"
}
```

**Команда** — это одна программа, которая ставится одной строкой. Все ее команды есть в [справочнике CLI](https://pethost.dev/docs/cli/).

```
curl -fsSL https://pethost.dev/install.sh | sh      # macOS, Linux
irm https://pethost.dev/install.ps1 | iex           # Windows, in PowerShell
```

**Аккаунту** нужен тариф. Если вы не вошли, `pethost deploy` откроет браузер, и вы войдете. Если тарифа еще нет, команда покажет, где его выбрать, и подождет.

## Деплой приложения на TanStack Start одной командой

Перейдите в папку, где лежит `package.json`, и запустите `pethost deploy`. Вот весь экран для приложения, которое создал CLI:

```
$ cd my-app
$ pethost deploy
Name it [my-app]:    it will live at https://my-app.sam.pethost.app
✓ Packed 18 files, 183 KB   (left out node_modules)
✓ Uploaded straight to your machine
✗ /compose.yaml: the project directory has no compose.yaml at its root: add one
✓ Node.js project detected, wrote Dockerfile.
✓ Packed 19 files, 184 KB   (left out node_modules)
✓ Uploaded straight to your machine
✓ Built and started in 29 s
  · wrote compose.yaml for the Dockerfile: the service app, reading .env
✓ app listens on 3000 → https://my-app.sam.pethost.app
  It answers 200.

https://my-app.sam.pethost.app

Wrote .pethost (commit it). Next:   pethost logs -f   ·   pethost open
```

1. **Она спрашивает одно** Имя проекта — первое слово его адреса. Enter берет имя папки.
2. **Машина не находит, что запускать** Папка уходит прямо на вашу машину, без `node_modules`. Строка с крестиком — ответ машины: проект запускается из Dockerfile или Compose-файла, а в папке пока нет ни того, ни другого.
3. **pethost пишет Dockerfile** Он прочитал скрипты `build` и `start` в `package.json` и загружает папку снова.
4. **Машина собирает и запускает приложение** Она видит, что сервер слушает 3000, и направляет туда адрес. Затем pethost сам открывает адрес и печатает, что тот ответил: 200.

Мы открыли задеплоенное приложение так, как его открывает посетитель. Главная страница и `/about` ответили 200 с HTML, отрендеренным на сервере, а адрес без маршрута ответил 404. Работающий сервер занял 43 MB памяти.

## Dockerfile, который pethost пишет для TanStack Start

Вот файл целиком, как он был записан в папку приложения:

```
# Written by pethost deploy for this Node.js project: Node 24 (no .nvmrc names another),
# npm installs it (package-lock.json), package.json builds it with "vite build",
# package.json starts it with "node .output/server/index.mjs".
# It is yours now: change it as you like. pethost does not write it again.

FROM node:24
WORKDIR /app

COPY . .

# Every dependency: what builds the project, and may start it, is among the ones for
# development.
RUN --mount=type=cache,target=/root/.npm \
    npm install

RUN npm run build

ENV NODE_ENV=production
CMD ["npm", "run", "start"]
```

Его первые строки говорят, что pethost прочитал в вашей папке. Менеджер пакетов — тот, который называет ваш lockfile, а версия Node — та, которую называет `.nvmrc` или `.node-version`, или Node 24, если нет ни того, ни другого. Сборка и запуск — ваши два скрипта, в том виде, в каком вы их написали.

### Без скрипта start

Приложение на TanStack Start можно собрать для разных видов хостинга, поэтому pethost не угадывает, как запускается ваше. Без скрипта `start` он не пишет файл и объясняет почему:

```
$ pethost deploy
Name it [my-app]:    it will live at https://my-app.sam.pethost.app
✓ Packed 13 files, 177 KB
✓ Uploaded straight to your machine
✗ /compose.yaml: the project directory has no compose.yaml at its root: add one
  package.json builds the project and names nothing that starts it (no start script), and what it builds is no site of a kind pethost has a row for.
  Your coding agent writes one in a minute: "Write a Dockerfile for this app".
  Then run pethost deploy again.     How Pethost runs a folder: https://pethost.dev/docs/api/#CreateProject
```

Добавьте скрипт и запустите команду снова.

## Измените маршрут и задеплойте снова

Отредактируйте маршрут и запустите ту же команду. Второй деплой занял 7 секунд, потому что машина хранит слои сборки и кеш npm:

```
$ pethost deploy
my-app (.pethost)
✓ Packed 20 files · uploaded · built and started in 7 s
  · wrote compose.yaml for the Dockerfile: the service app, reading .env
  · kept the project's x-pethost
  It answers 200.
https://my-app.sam.pethost.app
```

### Когда сборка падает

Чтобы это увидеть, мы сломали файл маршрута. На экране — лог сборки с ошибкой, а последняя строка говорит, что получают посетители. Вот этот экран, сокращенный до трех строк:

```
$ pethost deploy
my-app (.pethost)
✗ Deploy failed: failed to build: failed to solve: process "/bin/sh -c npm run build" did not complete successfully: exit code: 1
    #9 0.793 Error: Error transforming route file /app/src/routes/about.tsx: SyntaxError: Unexpected token, expected "," (4:19)
  Nothing changed: the version before still runs.
```

Чтобы деплоить каждый пуш, один раз подключите репозиторий командой `pethost github sam/my-app`. Pethost читает только те репозитории, которые вы дали его GitHub App. `pethost rollback` возвращает версию, предшествующую текущей, а ваша машина хранит три версии перед текущей. ИИ-агент может сделать все это за вас через MCP-сервер Pethost: [как агент деплоит проект и следит за ним](https://pethost.dev/ru/blog/hosting-for-ai-coding-agents/).

## Переменные окружения и свой домен

Переменная, которую читает серверная функция, задается одной командой. Команда спрашивает значение, не показывая его, записывает его в файл `.env` проекта на машине, и следующие деплои его сохраняют:

```
pethost env set DATABASE_URL
```

Любое имя в домене вашего аккаунта сразу становится адресом с HTTPS. Для своего домена нужны одна команда и одна DNS-запись:

```
pethost domain add app.example.com
```

Команда печатает запись, которую нужно создать: CNAME с вашего имени на имя вашей машины. Сертификат появляется сам, как только имя начинает указывать на машину, и сам продлевается.

## Что вы получаете за эти деньги

Pethost стоит 9,99 € в месяц за все, что вы хостите, на 2 vCPU, 3 GB памяти и 30 GB диска. Сервер приложения занял 43 MB этой памяти, так что на машине остается место для его базы данных, воркера и других ваших проектов — например, [приложения на React Router](https://pethost.dev/ru/blog/deploy-react-router-app/) рядом с ним. [Платы за проект нет](https://pethost.dev/ru/blog/unlimited-projects-flat-monthly-fee/), и [ничего не считается по счетчику](https://pethost.dev/ru/blog/paas-without-usage-based-billing/): серверные функции не оплачиваются за каждый вызов.

- **9,99 €** в месяц за все ваши проекты, без счетчиков
- **29 с** на сборку и запуск приложения в первый раз
- **7 с** на следующий деплой

Что уже сделано за вас: HTTPS с сертификатами, которые продлеваются сами, деплои из GitHub, ночные бэкапы, которые хранятся 14 дней, SSH в любой контейнер и учет каждого запроса — с самыми популярными путями и долей ошибок за последние 30 дней. Машина всегда включена, поэтому серверная функция [никогда не ждет холодного старта](https://pethost.dev/ru/blog/always-on-hosting-no-cold-starts/). Тарифы — в разделе [цен](https://pethost.dev/ru/#pricing) на главной странице.

**Один проект, открытый на запросах.** Сколько их пришло, как быстро на них ответили, и график за последние 15 минут.

![Панель Pethost: проект, открытый на запросах, с их числом, временем ответа и графиком за последние 15 минут.](https://pethost.dev/shots/project.webp)

### Pethost — лучший выбор для

- **Разработчиков с full-stack-приложением на React**: сервер, его серверные функции и база данных на одной машине, с одним счетом
- **Разработчиков-одиночек** с несколькими личными проектами, у каждого из которых свой адрес
- **Людей, за которых деплоит агент**: Claude Code или Codex выкладывает приложение и читает его логи
- **Стартапов на ранней стадии**, которым нужны фиксированные расходы в месяц, пока продукт небольшой

### Ищите другое, если

- Вашему приложению нужны несколько регионов или автомасштабирование

## Вопросы

### Как запустить TanStack Start на Node-сервере?

Добавьте плагин Nitro в `vite.config.ts` и скрипт `"start": "node .output/server/index.mjs"` в `package.json`, как сказано в руководстве TanStack по хостингу. Тогда `npm run build` пишет сервер в `.output`, а `npm run start` запускает его на порту 3000.

### Нужен ли Dockerfile для деплоя приложения на TanStack Start?

На Pethost проект запускается из Dockerfile или Compose-файла, и писать его самому не нужно: как только в `package.json` есть скрипты `build` и `start`, `pethost deploy` пишет Dockerfile и деплоит его. Файл остается в вашей папке, и его можно менять.

### Что будет, если сборка TanStack Start упадет при деплое?

Для посетителей ничего не изменится. Деплой останавливается, на экране — лог сборки с ошибкой, а версия, которая работала раньше, продолжает работать.

### Можно ли деплоить приложение на TanStack Start из GitHub при каждом пуше?

Да. Один раз задеплойте папку командой `pethost deploy`, затем запустите `pethost github owner/repository`. С этого момента каждый пуш в репозиторий деплоится сам, а `pethost rollback` возвращает к более раннему коммиту.

### Сколько стоит хостинг приложения на TanStack Start на Pethost?

9,99 € в месяц за Starter с 2 vCPU, 3 GB и 30 GB, без платы за проект и без оплаты за запросы: там же работают ваши другие приложения, сайты и базы данных. Бесплатного тарифа нет. Цены без НДС.

На экранах — деплои приложения, которое пишет `npx @tanstack/cli@latest create --deployment nitro`, с TanStack Start 1.168.61, Nitro 3.0.260610-beta и pethost 0.2.1 на нашей тестовой машине, которая до этого ничего не собирала. Аккаунт на них — пример, `sam`.

1. [TanStack Start: хостинг](https://tanstack.com/start/latest/docs/framework/react/guide/hosting)
2. [TanStack Start: быстрый старт](https://tanstack.com/start/latest/docs/framework/react/quick-start)
3. [pethost, командная строка Pethost](https://pethost.dev/docs/cli/)

## Запустите свои проекты уже сегодня

Деплойте приложения, ботов и базы данных из агента, с GitHub или в браузере, сколько поместится, по одной фиксированной цене. Ничего по счётчику, ничего сверху.

[Разместить проекты за 9,99 €/мес](https://console.pethost.dev/)

## Читать дальше

- 10 октября 2026 г. [Как задеплоить сайт на VitePress в 2026: одна команда, HTTPS и Dockerfile, который остается у вас](https://pethost.dev/ru/blog/deploy-vitepress-site/) Деплой сайта на VitePress одной командой: pethost deploy пишет Dockerfile, собирает сайт и отдает его по HTTPS — за 9,99 € в месяц.
- 10 октября 2026 г. [Как задеплоить сайт на Eleventy в 2026: одна команда, HTTPS и Dockerfile, который остается у вас](https://pethost.dev/ru/blog/deploy-eleventy-site/) Деплой сайта на Eleventy (11ty) одной командой: pethost deploy пишет Dockerfile, собирает _site и отдает его по HTTPS — за 9,99 € в месяц.
- 25 сентября 2026 г. [Хостинг-провайдеры с официальным MCP-сервером в 2026: деплой, логи и откат в сравнении](https://pethost.dev/ru/blog/hosting-with-mcp-server/) Официальный MCP-сервер есть у 18 из 19 хостинг-платформ в 2026 году, откат — у двух. Инструменты Pethost деплоят, читают логи, откатывают и восстанавливают.
- 16 сентября 2026 г. [Хостинг для AI-агентов Claude Code и Codex в 2026: пусть агент сам деплоит и отлаживает продакшен](https://pethost.dev/ru/blog/hosting-for-ai-coding-agents/) Чтобы Claude Code или Codex сами деплоили и отлаживали продакшен, хостинг должен дать агенту пять вещей. Pethost их дает, от 9,99 € в месяц.

[Все статьи](https://pethost.dev/ru/blog/) · [О Pethost](https://pethost.dev/about/) · [Цены](https://pethost.dev/ru/#pricing)

Pethost · Stephan Gomer · NIP 1133096755

Pethost

- [Шаблоны](https://pethost.dev/ru/templates/)
- [О нас](https://pethost.dev/about/)
- [Документация](https://pethost.dev/docs/)
- [Блог](https://pethost.dev/ru/blog/)
- [API](https://pethost.dev/docs/api/)
- [CLI](https://pethost.dev/docs/cli/)
- [Плагин](https://github.com/pethost-dev/plugin)
- [Условия](https://pethost.dev/terms/)
- [Конфиденциальность](https://pethost.dev/privacy/)
- [Возвраты](https://pethost.dev/refunds/)
- [support@pethost.dev](mailto:support@pethost.dev)

Базы данных

- [Postgres](https://pethost.dev/ru/postgres/)

Сравнения

- [Coolify vs Dokploy vs CapRover vs Dokku](https://pethost.dev/ru/blog/coolify-vs-dokploy-vs-caprover-vs-dokku/)
- [Coolify Cloud vs Dokploy Cloud](https://pethost.dev/ru/blog/coolify-cloud-vs-dokploy-cloud/)
- [Цены Railway, Render и Fly.io](https://pethost.dev/ru/blog/railway-vs-render-vs-fly-io-pricing/)
- [Управляемый хостинг Docker Compose](https://pethost.dev/ru/blog/managed-docker-compose-hosting/)

Альтернативы

- [Альтернативы Railway](https://pethost.dev/ru/blog/railway-alternatives/)
- [Альтернативы Heroku](https://pethost.dev/ru/blog/heroku-alternatives/)
- [Альтернативы Dokploy](https://pethost.dev/ru/blog/dokploy-alternatives/)
- [Альтернативы Coolify](https://pethost.dev/ru/blog/coolify-alternatives/)
- [Альтернативы Render](https://pethost.dev/ru/blog/render-alternatives/)
- [Альтернативы Sliplane](https://pethost.dev/ru/blog/sliplane-alternatives/)
