Een Replit-project naar je eigen server verhuizen
Om een Replit-project naar je eigen server te verhuizen download je de code als zip of push je hem naar GitHub, verzamel je je Secrets en database apart, koppel je de code aan het Coolify-paneel op je server en zet je je domein om zodra je hebt gezien dat het werkt. De code is het makkelijke deel. De eigen gids van Replit zegt dat de database en het webadres de meeste tijd kosten.
Het oude project blijft de hele tijd draaien. Zet niets uit voordat je alles op de nieuwe server hebt getest.
Wat gaat er met de code mee en wat niet?
| Onderdeel | Status | Wat je doet |
|---|---|---|
| Broncode | Gaat mee | Zip of GitHub |
.replit, replit.nix | Gaan mee, maar alleen Replit leest ze | Gebruik ze om het startcommando en de systeempakketten te achterhalen |
| Secrets | Blijven achter | Voer de waarden met de hand in op de server |
| Database | Blijft achter | Exporteer met pg_dump en laad het op de server |
| Bestanden in App Storage | Blijven achter | Download ze en pas de opslagcode aan |
| Replit Auth | Gekoppeld aan Replit-accounts | Stap over op een andere aanmeldmethode |
| Connectoren | Blijven achter | Stel de API-sleutel van elke dienst in als variabele |
Hoe krijg je de code?
Via GitHub: Open in de Project Editor Git onder Tools. Kies zo nodig Initialize Git Repository, koppel een repository, commit en push. Houd hem privé. We raden deze route aan omdat ze ook latere wijzigingen meeneemt.
Als zip: Kies in het menu met drie puntjes bovenaan de bestandsboom Download as zip. Mislukt dat, maak de zip dan zelf in de Shell en laat de map .cache weg, waar Replit gecachete geheime waarden bewaart: zip -r project.zip . -x ".cache/*" "node_modules/*"
Stap voor stap
- Bestel een server via de pagina Next.js VPS. Deze optie wordt met Coolify geleverd, dus Python- en gewone Node-projecten publiceer je vanuit hetzelfde paneel.
- Zoek het startcommando in
.repliten de poort in je code. Ook het eigen publiceren van Replit vereist luisteren op0.0.0.0, dus dat is meestal al gedaan. De Flask-waarden die we hebben geprobeerd, zijn poort5000enpython -m flask run --host=0.0.0.0 --port=5000. - Een Python-project heeft zijn afhankelijkheden nodig in
requirements.txtofpyproject.toml. Gebruik voor systeempakketten uitreplit.nixde buildvariabeleRAILPACK_DEPLOY_APT_PACKAGES, al komen Nix- en APT-namen niet altijd overeen. - Kloon de repository en open de map in een codeertool zoals Claude Code of Cursor. Kopieer de rij Plak in je AI-tool van het tabblad Overzicht in je Seturack-paneel en plak die erin. De tool handelt de publicatie af, of je kunt het met de hand doen.
- Voer de waarden uit het hulpmiddel Secrets van Replit als omgevingsvariabelen in op de server, inclusief de publicatiegeheimen die Replit apart bewaart.
- Kopieer de database één keer om te testen (zie hieronder) en test de app van begin tot eind op het HTTPS-adres.
- Haal de oude app offline, kopieer de database nog een laatste keer en laat het A-record van je domein naar het IP-adres van de server wijzen. Het certificaat wordt automatisch uitgegeven.
Je hebt root-toegang en je kunt alles vanuit het paneel beheren als je dat liever hebt.
Hoe verhuis je de database?
De database van Replit is compatibel met PostgreSQL en de tools staan klaar in de Shell:
- Exporteer hem in de Replit Shell:
pg_dump -Fc "$DATABASE_URL" --no-owner --no-privileges -f backup.dump - Die opdracht exporteert de ontwikkeldatabase, en live gegevens staan meestal in productie. Selecteer in het hulpmiddel Database de productiedatabase, kopieer de verbindingsreeks uit Settings en gebruik die in plaats van
"$DATABASE_URL". - Download
backup.dump. Houd het buiten de repository, want het bevat al je gegevens. - Maak PostgreSQL aan in Coolify en upload het bestand met Import backup op de pagina Backups van de database.
- Stel het interne adres van de database in als
DATABASE_URLin de app en publiceer opnieuw.
Alles wat wordt geschreven nadat pg_dump draait, zit niet in de kopie, en daarom komt de laatste kopie nadat je de oude app hebt gestopt.
Bestanden en inloggen
App Storage-buckets verhuizen niet, dus download de bestanden uit het opslaghulpmiddel van Replit. Gebruikt je code de SDK van Replit, dan moet dat deel veranderen. De eenvoudigste vervanging is bestanden naar een map op de server schrijven en die koppelen met Persistent Storage in Coolify.
Replit Auth laat je gebruikers inloggen met Replit-accounts. Om niet meer van Replit afhankelijk te zijn, heb je mogelijk een andere aanmeldmethode nodig. Je codeertool kan dat onderdeel herschrijven, maar maak een back-up van je gebruikerstabel en test eerst op het tijdelijke adres.
Veelgestelde vragen
Welke grootte heeft een Replit-project nodig?
De verkooppagina raadt minimaal 4 GB RAM, 2 vCores en 40 GB schijf aan, gebaseerd op Next.js-builds: een project met 85 pakketten mislukte bij 2 GB en werd bij 4 GB wel gebouwd. Reken extra als de database de server deelt en schaal op vanuit je paneel als dat nodig is.
Wat kost het per maand?
De aanbevolen minimumgrootte kost ongeveer $6 per maand (inclusief btw), en buiten Turkije betaal je in Amerikaanse dollars. Dagelijkse back-ups zijn bij de prijs inbegrepen en het verkeer is onbeperkt. Je gebruik en abonnement bij Replit lopen door totdat je ze opzegt.
Hoe verhuis ik mijn domein weg van Replit?
Verwijder het domein onder Publishing, Domains in Replit, laat het A-record naar het IP-adres van de server wijzen, voeg het daarna met https toe op de pagina Domains in Coolify en publiceer opnieuw.
Kan ik in Replit blijven ontwikkelen?
Ja. Zet automatische synchronisatie aan in het paneel Git, zodat wijzigingen op GitHub komen. Met een webhook bouwt de server opnieuw bij elke push. Zonder webhook druk je in Coolify op Redeploy. Houd er rekening mee dat het voorbeeld van Replit en de live server verschillende databases gebruiken.
Kan ik de database op Replit laten staan?
Je kunt het proberen door de server de verbindingsreeks te geven, maar je app en gegevens staan dan los van elkaar en je rekening bij Replit loopt door. Verhuis je de app echt, dan is het netter om de database naar dezelfde server te halen.
Reacties0
Nog geen reacties
Deel als eerste uw gedachten.
Meld u aan of registreer u om een reactie te plaatsen.