bootload
⚓ portaal

AAN DE HORIZON — BINNENKORT

⚓ idle harbor

Zet één optie aan en de microVM van je app wordt opgeslagen als snapshot wanneer het verkeer stopt. Terwijl hij slaapt betaal je alleen voor de opslag van de geparkeerde VM — geen cent rekenkracht. Het volgende verzoek wekt hem in ~150–300 ms.

🧮 wat het echt bespaart

Snapshot-opslag kost €0,05/GB-maand — hetzelfde tarief als een back-up. Een typische microVM-snapshot is ongeveer zo groot als zijn RAM-toewijzing.

sloop · 1 vCPU / 2 GB
€8,00/maand altijd-aan
~€0,80/maand geparkeerd bij 2 u/dag actief
rekenkracht voor 60 u + 2 GB snapshot-opslag
ketch · 2 vCPU / 4 GB
€16,00/maand altijd-aan
~€2,90/maand geparkeerd bij 4 u/dag actief
rekenkracht voor 120 u + 4 GB snapshot-opslag
10 PR-previews · sloops
€80,00/maand altijd-aan
~€11,00/maand geparkeerd tijdens review-uren
actief ~3 u/dag, in slaap 's nachts en in het weekend

Rekenkracht wordt per seconde gefactureerd terwijl hij wakker is, snapshot-opslag per seconde terwijl hij slaapt. Geen afronding, geen minimum.

🗺️ aanzetten

idle harbor
$ bootload deploy --image ghcr.io/you/app --idle-harbor --idle-after 15m …15 quiet minutes later… ⚓ app dropped anchor in the harbor — compute billing stopped now paying: snapshot storage only (~€0.05/month for this service) …a visitor arrives… 🌊 app under sail again in ~150–300 ms — the visitor just sees the page # already deployed? toggle it on without a redeploy: $ bootload service set --idle-harbor --idle-after 10m # or flip it off: $ bootload service set --no-idle-harbor

Het portaal heeft een één-klik-schakelaar op elke service. Het idle-venster is instelbaar van 1 minuut tot 24 uur — korter voor webhooks die direct moeten voelen, langer voor services waar de eerste wake een korte vertraging aankan.

⚙️ wat er gebeurt, stap voor stap

🕐
verkeer stopt voor N minuten
De gateway merkt dat er geen verzoeken meer binnenkwamen tijdens het ingestelde idle-venster (standaard: 15 min, tot 1 min). Hij seint de node.
📸
snapshot gemaakt — < 1 seconde
De node-agent bevriest de draaiende Firecracker-microVM en schrijft de volledige geheugentoestand weg naar een versleuteld snapshot-bestand op schijf. Je proces wordt midden in de uitvoering vastgelegd — open bestanden, netwerktoestand, heap, alles.
vCPU en RAM vrijgegeven
De VM wordt afgebroken. Het CPU-slot en het geheugen gaan terug naar de node. De facturatie kantelt: de rekenmeters stoppen, de snapshot-opslag begint (€0,05/GB-maand — hetzelfde tarief als een back-up).
🔔
een verzoek komt binnen
De gateway vangt het binnenkomende verzoek op en houdt het vast — de verbinding van de beller blijft open, er wordt geen fout teruggegeven. De agent krijgt het sein om te herstellen.
🌊
VM hersteld — ~150–300 ms
Firecracker laadt de snapshot terug in een nieuwe microVM. De klok wordt opnieuw gesynchroniseerd met de werkelijke tijd, de RNG wordt opnieuw geseed (zodat je nooit een entropy-toestand opnieuw afspeelt), en de LUKS-volumemappers worden heropend als de service volumes heeft aangekoppeld.
health check slaagt — verzoek vrijgegeven
Een snelle health-probe bevestigt dat het proces reageert. Het vastgehouden verzoek wordt doorgestuurd, verloopt normaal, en de service vaart weer onder zeil. De bezoeker ziet een pagina, geen fout.

💡 gemaakt voor

🧪

Zijprojecten & demo's

Je portfoliostuk krijgt drie bezoekers per week. Altijd-aan is €2/maand; in de harbor kost een 512 MB-snapshot zo'n €0,05/maand — dezelfde app, een fractie van de rekening.

🪝

Webhooks & integraties

Een ontvanger die afgaat als Stripe, GitHub of n8n belt. 23 van de 24 uur in slaap, wakker zodra een payload binnenkomt — de verzender merkt de 300 ms niet.

🎭

Staging- & preview-omgevingen

Tien open PR's betekent tien preview-instances. Altijd-aan is €20+/maand voor omgevingen waar na 17 uur niemand naar kijkt. In de harbor slaapt elke omgeving zodra de reviewer het tabblad sluit.

🏢

Interne tools

Het admin-dashboard, de rapportgenerator, de wiki die niemand op zondag leest. Tools die je uren-per-week gebruikt zouden geen uren-per-maand mogen kosten.

Functie-achtige services

Een API die op verzoek beelden omzet of PDF's rendert gedraagt zich als een functie — zonder herschrijven voor een FaaS-runtime. Deploy dezelfde container en laat harbor naar bijna-nul schalen.

🤖

Bots & assistenten

Chatbots en AI-agenten die op mentions reageren slapen tussen gesprekken. Wake-on-request houdt het gesprekstempo; de wallet houdt zijn muntjes.

💻

Persoonlijke dev-omgevingen

Je cloud-devbox met al je tools geïnstalleerd. Actief terwijl je codeert, in slaap als je dat niet doet. Niet meer betalen voor inactieve rekenkracht tussen je avondsessie en de ochtendstandup.

📅

Geplande batchjobs

Een service die om 03:00 rapporten verwerkt en de rest van de dag idle is. Park hem tussen runs; een cron-wektrigger (of een simpele HTTP-call) brengt hem terug precies waar hij stopte.

⚙️

Workers & processors

Een HTTP-getriggerde worker die de klus klaart — een video transcoderen, een beeld verkleinen — en dan slaapt tot de volgende. De dispatcher wekt hem op verzoek, dus je betaalt alleen de seconden dat hij rekent.

🌐

Edge-achtige request-handlers

Een HTTP-handler die zich gedraagt als een serverless functie — één verzoek erin, één antwoord eruit — maar draait in een volledige Linux-microVM zonder runtime-beperkingen, en herstelt je exacte proces, niet een lege container.

🔬 onder de motorkap

Voor de nieuwsgierigen: Idle Harbor gebruikt Firecracker snapshot/restore — dezelfde technologie die AWS gebruikt voor Lambda-cold-starts, behalve dat de snapshot hier je draaiende proces bewaart in plaats van een vooraf geïnitialiseerde lege VM. De snapshot legt de volledige geheugentoestand vast: heap, stack, open file descriptors, alles wat je proces onderweg had.

⚖️ wanneer níét te gebruiken

Idle Harbor is niet voor altijd-aan-workloads:

Harbor is een optie die je per service aanzet, nooit standaard. De meeste teams draaien hun productie-app altijd-aan en parkeren de rest.

🪙 bekijk prijzen meld je aan — harbor komt eraan