Блог

Інструкції, посібники й новини про продукт.

Розробникам

Як перенести проєкт Replit на власний сервер

2 листопада 2026 5 хв читання
Поділитися записом

Щоб перенести проєкт Replit на власний сервер, завантажте код як zip або надішліть його на GitHub, окремо зберіть свої Secrets і базу даних, підключіть код до панелі Coolify на сервері та перемкніть домен, коли побачите, що все працює. Код — найпростіше. У власному посібнику Replit сказано, що найбільше часу забирають база даних і вебадреса.

Старий проєкт увесь час продовжує працювати. Нічого не вимикайте, доки не перевірите все на новому сервері.

Що йде разом із кодом, а що ні?

ЧастинаСтанЩо робити
Вихідний кодПереїжджаєZip або GitHub
.replit, replit.nixПереїжджають, але читає їх лише ReplitВикористайте їх, щоб дізнатися команду запуску та системні пакети
SecretsЗалишаютьсяВведіть значення на сервері вручну
База данихЗалишаєтьсяЕкспортуйте через pg_dump і завантажте на сервер
Файли App StorageЗалишаютьсяЗавантажте їх і змініть код роботи зі сховищем
Replit AuthПрив’язаний до облікових записів ReplitПерейдіть на інший спосіб входу
КонекториЗалишаютьсяЗадайте ключ API кожної служби як змінну

Як забрати код?

Через GitHub: у Project Editor відкрийте Git у розділі Tools. За потреби виберіть Initialize Git Repository, підключіть репозиторій, потім зробіть commit і push. Тримайте його приватним. Радимо цей шлях, бо він переносить і пізніші зміни.

Як zip: у меню з трьома крапками вгорі дерева файлів оберіть Download as zip. Якщо не вдалося, створіть zip самі в Shell, виключивши теку .cache, де Replit зберігає кешовані значення секретів: zip -r project.zip . -x ".cache/*" "node_modules/*"

Крок за кроком

  1. Замовте сервер на сторінці Next.js VPS. До цього варіанта входить Coolify, тож проєкти на Python і звичайному Node розгортаються з тієї самої панелі.
  2. Знайдіть команду запуску в .replit, а порт — у своєму коді. Власна публікація Replit теж вимагає слухати 0.0.0.0, тож ця частина зазвичай уже виконана. Значення для Flask, які ми випробували, — порт 5000 і python -m flask run --host=0.0.0.0 --port=5000.
  3. Проєкту на Python потрібні залежності в requirements.txt або pyproject.toml. Для системних пакетів, перелічених у replit.nix, скористайтеся змінною збірки RAILPACK_DEPLOY_APT_PACKAGES, хоча назви в Nix і APT не завжди збігаються.
  4. Клонуйте репозиторій і відкрийте теку в інструменті для кодування, як-от Claude Code чи Cursor. Скопіюйте рядок Вставте у свій інструмент ШІ з вкладки Огляд своєї панелі Seturack і вставте його. Розгортання виконає інструмент, або можна зробити це вручну.
  5. Введіть значення з інструмента Secrets у Replit як змінні середовища на сервері, включно з секретами розгортання, які Replit зберігає окремо.
  6. Один раз скопіюйте базу даних для тестування (див. нижче) і перевірте застосунок від початку до кінця на його адресі HTTPS.
  7. Вимкніть старий застосунок, востаннє скопіюйте базу даних і спрямуйте запис A свого домену на IP-адресу сервера. Сертифікат випускається автоматично.

Root-доступ у вас є, і якщо хочете, усім можна керувати з панелі.

Як перенести базу даних?

База даних Replit сумісна з PostgreSQL, а потрібні інструменти вже є в її Shell:

  1. Експортуйте в Shell Replit: pg_dump -Fc "$DATABASE_URL" --no-owner --no-privileges -f backup.dump
  2. Ця команда експортує базу розробки, а робочі дані зазвичай лежать у production. В інструменті Database виберіть робочу базу даних, скопіюйте рядок підключення зі Settings і використайте його замість "$DATABASE_URL".
  3. Завантажте backup.dump. Тримайте його поза репозиторієм, бо він містить усі ваші дані.
  4. Створіть PostgreSQL у Coolify і завантажте файл через Import backup на сторінці Backups бази даних.
  5. Задайте внутрішню адресу бази даних як DATABASE_URL у застосунку й розгорніть знову.

Усе, що записано після запуску pg_dump, у копію не потрапляє, тому остання копія робиться після зупинки старого застосунку.

Файли та вхід

Бакети App Storage не переїжджають, тож завантажте файли з інструмента сховища Replit. Якщо ваш код використовує SDK Replit, цю частину доведеться змінити. Найпростіша заміна — записувати файли в теку на сервері та монтувати її через Persistent Storage у Coolify.

У Replit Auth ваші користувачі входять через облікові записи Replit. Щоб не залежати від Replit, може знадобитися інший спосіб входу. Ваш інструмент для кодування може переписати цю частину, але спершу зробіть резервну копію таблиці користувачів і перевірте на тимчасовій адресі.

Поширені запитання

Який розмір потрібен проєкту Replit?

Сторінка продажу радить щонайменше 4 ГБ RAM, 2 vCore і 40 ГБ диска, виходячи зі збірок Next.js: проєкт із 85 пакетами не зібрався на 2 ГБ, а на 4 ГБ зібрався. Залиште запас, якщо база даних ділить сервер, і за потреби збільште сервер у панелі.

Скільки це коштуватиме на місяць?

Рекомендований мінімальний розмір коштує близько $6 на місяць (ПДВ включено), а за межами Туреччини ви платите в доларах США. Щоденні резервні копії входять у ціну, а трафік необмежений. Ваше використання й підписка Replit тривають, доки ви їх не закриєте.

Як перенести домен із Replit?

Видаліть домен у Publishing, Domains в Replit, спрямуйте запис A на IP-адресу сервера, потім додайте його з https на сторінці Domains у Coolify і розгорніть знову.

Чи можу я й далі розробляти в Replit?

Так. Увімкніть автосинхронізацію в панелі Git, щоб зміни потрапляли на GitHub. З вебхуком сервер перебудовується після кожного push. Без нього натискайте Redeploy у Coolify. Пам’ятайте, що попередній перегляд Replit і робочий сервер використовують різні бази даних.

Чи можу я залишити базу даних у Replit?

Можна спробувати, давши серверу її рядок підключення, але тоді застосунок і дані житимуть окремо, а рахунок від Replit триватиме. Якщо ви справді переносите застосунок, чистіше перенести базу даних на той самий сервер.

Готове до роботи в Seturack: Next.js, Coolify.

Коментарі0

Коментарів поки немає

Поділіться своєю думкою першим.

Долучайтеся до обговорення

Будь ласка, увійдіть або зареєструйтеся, щоб залишити коментар.

Не пропускайте нові записи

Отримуйте наші свіжі інструкції, посібники та новини продукту на пошту.

Ви підписалися на нашу розсилку.