Slik eksporterer og self-hoster du en AI-bygd app
For å self-hoste en AI-bygd app må du hente ut koden (en nedlasting eller en synk til et GitHub-repo du eier), lage hemmelighetene på nytt som miljøvariabler, flytte eller gjenskape databasen, og deploye den til en host som passer til det appen er. En statisk host for en enkel frontend, eller en plattform som kjører servere eller containere for alt med en backend. Koden er vanligvis den enkle delen. Data, hemmeligheter og tjenestene byggeren stille kjørte for deg, er der arbeidet ligger.
Hvorfor eksportere i det hele tatt
Det finnes gode grunner til å ta koden med seg, og noen mindre gode.
Gode grunner:
- Eierskap og sikkerhet. En kopi av koden i ditt eget repo beskytter deg hvis byggeren endrer priser, funksjoner eller vilkår.
- Overlevering til utviklere. Et utviklingsteam vil ha koden i Git, i sine vanlige verktøy og sin vanlige review-prosess.
- Spesifikke krav. Datalagring i et bestemt land, en bestemt skyleverandør, selskapets sikkerhetspolicyer eller infrastruktur byggeren ikke tilbyr.
- Skala eller kostnad på et nivå der det virkelig lønner seg å kjøre egen infrastruktur.
Mindre gode grunner: å flytte en liten app med en håndfull brukere for å spare et lite beløp i måneden. Selvhosting legger arbeid på deg — oppdateringer, sikkerhetskopier, overvåking, sikkerhetsrettinger. Det kan være riktig avveining; ta den bevisst.
En fornuftig mellomvei: bli der du bygger og hoster, men synk til ditt eget GitHub-repo fra tidlig av. Da får du sikkerheten uten det operative arbeidet. Hvis Git er nytt for deg, les hva GitHub er.
Hva en eksport inneholder og ikke inneholder
Før du stoler på en eksport, åpne den og sjekk. Typisk:
| Inkludert | Vanligvis ikke inkludert |
|---|---|
| Kildekode (frontend, backend) | Hemmelige verdier (API-nøkler, passord) |
Konfigurasjonsfiler (package.json, Dockerfile, byggkonfigurasjon) | Installerte avhengigheter (node_modules og lignende), de installeres på nytt |
| Databaseskjema og migreringsfiler, hvis appen bruker dem | Selve databasedataene |
| Statiske ressurser i prosjektet | Filer brukere lastet opp til egen lagring |
| Tjenester byggeren administrerer: hosting, domener, databaseserver, fillagring |
Hemmelighetene utelates med vilje — et arkiv du kan sende på e-post eller committe, skal aldri inneholde aktive nøkler. Avhengigheter utelates fordi de bygges på nytt fra lock-filen.
Steg 1: Få koden ut
To vanlige veier:
- Last ned et arkiv av prosjektet. Raskt, og greit for en engangsflytting eller en sikkerhetskopi.
- Synk til GitHub. Bedre for alt som er løpende: full historikk, enkelt å klone hvor som helst, og de fleste hosts deployer direkte fra et GitHub-repo ved hver push.
Uansett, klon eller pakk ut det på en maskin (eller et skybasert utviklingsmiljø), og se etter en README. Hvis det ikke finnes en, be AI-en i byggeren skrive en før du drar:
Skriv en README for å kjøre dette prosjektet utenfor denne plattformen: stacken, nødvendige runtime-versjoner, installasjons- og byggekommandoer, startkommandoen og porten, hver miljøvariabel koden leser (navn og formål, uten verdier), og hvordan databasemigreringer kjøres.
Denne ene prompten sparer timer, fordi den tvinger de underforståtte delene av oppsettet ned på papiret.
Steg 2: Kjør den lokalt først
Før du deployer noe sted, bekreft at appen kjører på egen hånd:
- Installer runtime README nevner — Node.js, Python, Java, .NET — i en passende versjon.
- Installer avhengigheter (
npm install,pnpm install,pip install -r requirements.txt, eller tilsvarende). - Lag en lokal
.env-fil med miljøvariablene, helst med testnøkler. Hold den utenfor Git. Hva miljøvariabler og hemmeligheter er forklarer ideen. - Koble til en database — en lokal Postgres, eller en gratis utviklingsdatabase fra en administrert leverandør.
- Kjør migreringer, start appen og klikk deg gjennom hovedflytene.
Alt som bryter her, bryter også på en host, og det er mye lettere å feilsøke på egen maskin. Vanlige overraskelser: en hardkodet URL til byggerens forhåndsvisning, en manglende miljøvariabel byggeren satte automatisk, eller en tjeneste (fillagring, bildebehandling) som bare fantes på plattformen.
Steg 3: Flytt dataene
Hvis appen har ekte brukere, betyr dataene mer enn koden.
- Eksporter databasen. For Postgres lager
pg_dumpen fil du kan gjenopprette medpg_restoreellerpsqli den nye databasen. Be byggerens AI kjøre den hvis du ikke har direkte tilgang, og forklare hva den produserte. - Flytt opplastede filer. Hvis brukere lastet opp bilder eller dokumenter, ligger de i objektlagring atskilt fra databasen. Kopier dem til ny lagring (for eksempel en S3-kompatibel bøtte) og oppdater lagrede URL-er hvis de inneholder den gamle hosten.
- Planlegg overgangen. For en levende app er den enkle løsningen et kort vedlikeholdsvindu: stopp skriving, ta en siste eksport, gjenopprett den på den nye hosten, bytt DNS, og åpne igjen. Skriv ned hvert steg først.
- Test en gjenoppretting i en tom database før den ekte flyttingen.
Hvis Postgres er ukjent for deg, dekker hva Postgres er det grunnleggende.
Steg 4: Velg hvor du skal hoste
Tilpass hosten til hva appen er. Navnene under er eksempler på velkjente leverandører i hver kategori fra september 2026, ikke en rangering. Sjekk oppdaterte funksjoner og priser på nettstedene deres.
| Appens form | Hva den trenger | Eksempler på hoster |
|---|---|---|
| Statisk side eller SPA (bare HTML, CSS, JS) | Filhosting med CDN | Netlify, Vercel, Cloudflare Pages, GitHub Pages |
| Fullstack-rammeverk (Next.js og lignende) | Server eller serverless-funksjoner | Vercel, Netlify, Render, Railway |
| API eller backend (Node, Python, Java, C#) | Alltid påslått eller skalerbar til null server | Render, Railway, Fly.io, skytjenester for containere |
| Alt med en Dockerfile | Containerkjøretid | Fly.io, Render, Railway, AWS, Google Cloud, Azure |
| Full kontroll | En virtuell server du drifter | DigitalOcean, Hetzner, Linode, eller en hvilken som helst sky-VM |
Du trenger også:
- En administrert database — mange apphoster tilbyr Postgres, og dedikerte tjenester som Neon eller Supabase leverer det alene. Administrert er verdt det: sikkerhetskopiering og oppdateringer er noen andres jobb.
- Objektlagring for opplastinger, hvis appen har dem.
- E-postutsending, betalinger og AI-leverandører — disse trenger vanligvis bare de samme API-nøklene satt på den nye hosten.
For å være rettferdig med avveiningene: plattformhostene (de fire første radene) er raskere å sette opp og vedlikeholde, men du har mindre kontroll, og kostnadene kan øke med trafikken. En virtuell server er ofte billigere ved jevn belastning og helt under din kontroll, men du eier oppdateringer, TLS, sikkerhetskopier, overvåking og gjenoppretting. Hvis ingen på teamet vil ha den jobben, velg en plattform. For det grunnleggende om hva hosting innebærer, se hva webhosting er.
Steg 5: Deploy og bytt over
- Koble repoet til hosten, eller push et containerbilde.
- Sett miljøvariabler i hostens dashbord — alle fra README-en, med de ekte verdiene.
- Sett bygge- og startkommandoer og porten. Mange hoster sender porten i en
PORT-miljøvariabel; appen bør lytte på den og på alle grensesnitt (0.0.0.0), ikke barelocalhost. - Kjør migreringer mot den nye databasen.
- Test på hostens midlertidige URL før du rører DNS.
- Oppdater eksterne tjenester som peker på den gamle URL-en: betalings-webhooks, OAuth-omdirigerings-URL-er for innlogging, lenker i e-post, tillatte opprinnelser.
- Flytt domenet ved å oppdatere DNS-postene til den nye hosten. Hvordan du kobler til et eget domene forklarer postene.
- Behold den gamle deployen en kort stund til du er sikker, og ta den deretter ned.
Steg 6 er det som oftest glemmes: innlogginger og betalinger som stille slutter å virke etter en flytting, skyldes nesten alltid en callback-URL som fortsatt peker på den gamle hosten.
Steg 6: Ta over driften
Når du selvhoster, blir det byggeren gjorde for deg ditt ansvar. Minst: automatiske databasesikkerhetskopier med en testet gjenoppretting, feilsporing, oppetidsvarsler, oppdatering av avhengigheter, og en oversikt over hvem som har tilgang til hver konto. Hvordan du tar en AI-prototype til produksjon går gjennom denne listen mer i detalj.
Sjekkliste for eksport
- Kode i et repo du eier, med en README som dekker kjøring, bygging og miljøvariabler
- Appen kjører lokalt fra en ren klone
- Database eksportert og gjenoppretting testet; opplastede filer kopiert
- Host valgt etter appens form, pluss administrert database og lagring
- Alle miljøvariabler satt med ekte verdier på den nye hosten
- Webhooks, OAuth-omdirigeringer og lenker i e-post oppdatert
- DNS byttet, gammel deploy beholdt en stund og deretter fjernet
- Sikkerhetskopiering, overvåking og tilgangsliste på plass
Eksportere fra Mythex
I Mythex eier du koden du bygger. På Pro-abonnementet kan du laste ned prosjektet som et arkiv fra Prosjektinnstillinger → Eksporter, eller koble til GitHub og push og pull mot ditt eget repo. Gratisabonnement kan se koden skrivebeskyttet, men ikke eksportere eller synke den. Hemmeligheter og node_modules utelates fra eksporter, så lag hemmelighetene på nytt på den nye hosten. Dokumentasjonen dekker stegene i eksporter og kjør andre steder og GitHub, eksport og import. Du kan også fortsette å hoste på Mythex og bruke GitHub-synk bare som din egen kopi og overleveringsvei. Hvis du flytter, avpubliser Mythex-appen når den nye hosten er oppe.
Spørsmål
Kan jeg eksportere koden fra en AI-appbygger?
Det avhenger av verktøyet og abonnementet. Noen byggere lar deg laste ned hele prosjektet eller synke det til et GitHub-repo du eier; andre beholder appen inne på plattformen sin. Sjekk før du bruker måneder på en, og les hva eksporten inkluderer og ikke inkluderer.
Inkluderer eksporten databasen og API-nøklene mine?
Vanligvis eksporteres koden, men ikke dataene eller hemmelighetene. Hemmelige nøkler utelates normalt med vilje, og databaseinnhold må eksporteres separat, for eksempel med pg_dump for Postgres. Planlegg begge deler før du bytter host.
Hvor bør jeg hoste en eksportert app?
En statisk frontend passer godt på statiske hosts som Netlify, Vercel eller Cloudflare Pages. En app med sin egen server trenger en plattform som kjører kode eller containere, for eksempel Render, Railway eller Fly.io, eller en virtuell server du drifter selv. Du trenger også en administrert database hvis appen har en.
Er selvhosting billigere enn å bli hos byggeren?
Noen ganger, i stor skala. For små apper er forskjellen ofte liten når du regner med databasen, e-post, overvåking og din egen tid på vedlikehold. Flytt for kontroll eller spesifikke krav, ikke bare for å spare noen kroner i måneden.