Een Lovable-app op je eigen server hosten
Om een Lovable-app op je eigen server te hosten synchroniseer je het project met GitHub via de Git-synchronisatie van Lovable, koppel je de repository aan het Coolify-paneel op je server, stel je de omgevingsvariabelen in en laat je je domein ernaar wijzen. Lovable beschrijft deze route zelf: de code is van jou en draait waar je hem neerzet. Je kunt ook in Lovable blijven bouwen, want wijzigingen komen in de repository en de server publiceert vanaf daar.
De belangrijkste beslissing is de backend, want databaserecords en geüploade bestanden reizen niet met de code mee.
Hoe haal je de code uit Lovable?
| Route | Hoe | Wanneer |
|---|---|---|
| Git-synchronisatie | Ga naar Project settings, dan Git en GitHub, en druk op Connect. Lovable maakt een nieuwe repository aan, standaard privé, en de synchronisatie in beide richtingen begint. | Doorlopende publicaties, op alle abonnementen |
| Download codebase | Download een .zip van dezelfde pagina of uit de code-editor. | Een eenmalige kopie, op betaalde abonnementen |
Wat voor project heb je?
Lovable bouwt op twee stacks en de serverinstellingen volgen daaruit. Staat @tanstack/react-start in package.json, dan is je project TanStack Start. Zo niet, dan is het een ouder React + Vite-project. Nieuwe projecten starten op TanStack Start.
| Stack | Wat er op de server draait | Coolify-instellingen |
|---|---|---|
| TanStack Start | Een Node.js-server voor server-gerenderde pagina's, serverfuncties en API-routes | Buildvariabele NITRO_PRESET=node-server, Start command node .output/server/index.mjs, poort 3000. In package.json moet nitro staan. |
| React + Vite | Statische bestanden in dist/ | Output type Static site, Publish directory /dist. Zet Site type op SPA op de pagina General, zodat geneste pagina's bij vernieuwen geen 404 geven. |
Een statische Vite-build is een van de projecttypen die we via Coolify op een echte server hebben laten draaien. De waarden voor TanStack Start komen uit de eigen documentatie van Lovable, die Node 22 aanbeveelt.
Stap voor stap
- Bestel een server via de pagina Next.js VPS. Ondanks de naam wordt hij met Coolify geleverd, dat veel meer dan Next.js publiceert.
- 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 in die tool, die dan de publicatie afhandelt. Plak hem niet in de Lovable-chat. Hij bevat een API-sleutel en Lovable kan buiten zijn eigen voorbeeld niets uitvoeren.
- Geef de tool de omgevingsvariabelen die hij nodig heeft, die afhangen van je backendkeuze hieronder.
- Test het HTTPS-adres zodra het er is. Vernieuw een geneste pagina, log in en uit en probeer te schrijven en te uploaden. Mislukt het inloggen bij een doorverwijzing, voeg het nieuwe adres dan toe aan je toegestane redirect-URL's.
- Laat het A-record van je domein naar het IP-adres van de server wijzen en geef de tool de domeinnaam. Het certificaat wordt automatisch uitgegeven.
- Vraag de tool bij elke push te publiceren. Wijzigingen van Lovable komen in de repository, dus elke wijziging start een build.
De Next.js-gids behandelt hoe je dit met de hand doet. Je hebt root-toegang en je kunt alles vanuit het paneel beheren als je dat liever hebt. Je adres op lovable.app blijft de versie tonen die je daar het laatst hebt gepubliceerd.
Waar staat de backend?
Op de ingebouwde backend blijven
Alleen de site verhuist, dus dit is het minste werk. Stel VITE_SUPABASE_URL en VITE_SUPABASE_PUBLISHABLE_KEY in vóór de build. TanStack Start heeft voor zijn servercode ook SUPABASE_URL en SUPABASE_PUBLISHABLE_KEY nodig. Deze waarden staan in het bestand .env van de repository, maar de geheimen die je serverfuncties lezen niet. AI-functies en connectoren blijven werken en blijven je Lovable-credits gebruiken.
Supabase op je eigen server draaien
Lovable noemt twee bestemmingen voor zijn ingebouwde backend: beheerde Supabase en zelf gehoste Supabase. Alleen PostgreSQL verhuizen is niet genoeg, want ook inloggen, opslag, realtime en Edge Functions moeten mee. Supabase VPS geeft je dit allemaal op een aparte server. De documentatie van Supabase vraagt minimaal 4 GB RAM, 2 cores en 40 GB schijf.
- Maak de structuur aan door de bestanden in
supabase/migrations/op datumvolgorde uit te voeren. - Verplaats de gegevens. Ga naar More, Database, Manage, Settings en druk op Export data, laad daarna het met zstd gecomprimeerde PostgreSQL-archief met een
pg_restoredie zstd ondersteunt op poort 5432. Gebruikersaccounts zijn inbegrepen en iedereen logt opnieuw in. Probeer dit eerst op een testinstallatie. - Download bestanden via More, Storage en upload ze in Studio naar buckets met dezelfde namen.
- Kopieer
supabase/functions/naarvolumes/functions/op de server, stel hun geheimen in en herstart de functions-service. - Stel de aanmeldproviders,
SITE_URLenADDITIONAL_REDIRECT_URLSin. - Stel op de site
VITE_SUPABASE_URLin op het adres van je Supabase-server, stel de publishable key in en bouw opnieuw.
AI- en connectoraanroepen die via Lovable lopen, moeten naar je eigen accounts bij aanbieders verhuizen. Updates en monitoring worden jouw taak, en Lovable kan geen infrastructuur debuggen die het niet beheert.
Een project in je eigen Supabase-account gebruiken
Heb je je eigen Supabase-account gekoppeld, dan staat de backend al buiten Lovable en hoef je alleen de adressen in te stellen. Om hem naar je server te halen geeft de herstelgids van Supabase de stappen met supabase db dump.
Veelgestelde vragen
Hoeveel RAM heeft een Lovable-app nodig?
De verkooppagina raadt minimaal 4 GB RAM, 2 vCores en 40 GB schijf aan. Dat cijfer komt uit de build: een groot Next.js-project met 85 pakketten kwam bij 2 GB zonder geheugen te zitten en werd bij 4 GB wel gebouwd. Raakt het geheugen tijdens een build op, schaal dan op vanuit je paneel.
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. Een tweede server voor Supabase wordt apart in rekening gebracht. Je code exporteren beëindigt je Lovable-abonnement of Cloud-gebruik niet.
Hoe verhuis ik mijn domein weg van Lovable?
Test eerst alles op het tijdelijke adres. Laat daarna het A-record naar het IP-adres van de server wijzen, voeg het domein toe aan de app en publiceer opnieuw. Om het adres op lovable.app op te heffen, haal je het project in Lovable offline.
Hoe werk ik de site bij na de livegang?
Blijf werken in Lovable of je codeertool. Elke wijziging komt op de gesynchroniseerde branch en met een webhook bouwt de server hem. Wil je half afgemaakt werk offline houden, laat Lovable dan op een aparte branch werken en voeg samen als het klaar is.
Gaat de database mee met de code?
Nee. Git-synchronisatie en de zip bevatten bronbestanden en de bestanden die de databasestructuur definiëren. Records en geüploade bestanden exporteer je apart, dus controleer ze op de bestemming voordat je de oude backend opheft.
Reacties0
Nog geen reacties
Deel als eerste uw gedachten.
Meld u aan of registreer u om een reactie te plaatsen.