Workers

Ciężkie zadania, własny izolowany serwer.

Kiedy Edge Function (Deno, krótkie wywołania) nie wystarcza: wgraj kod w dowolnym popularnym języku — albo wdróż gotowy szablon jednym kliknięciem — a zbudujemy obraz i uruchomimy go w izolowanym kontenerze z dostępem do Twojej bazy. Przetwarzanie PDF i obrazów, OCR, scrapery z przeglądarką, boty, modele ML, konsumenci kolejek, zadania nocne.

15 środowisk + Dockerfile30+ szablonów „Wdróż”Izolacja gVisorOd 0,04 zł / godz.Deploy z panelu, API, MCP i CLI
workers/pdf-renderer/main.py
import os
import psycopg
from fastapi import FastAPI

app = FastAPI()

@app.post("/render")
def render(payload: dict):
    # DATABASE_URL, SUPABASE_URL i sekrety projektu są już w środowisku
    with psycopg.connect(os.environ["DATABASE_URL"]) as conn:
        conn.execute("insert into jobs(kind) values ('pdf')")
    return {"ok": True}

# hostbase workers init --template pdf-weasyprint   # lub: hostbase workers deploy pdf-renderer --runtime auto

Możliwości

Co dostajesz w Workers

Cztery typy

HTTP pod publicznym adresem HTTPS, praca w tle bez końca, cron według harmonogramu oraz konsument kolejki Supabase pgmq.

15 środowisk, wykrywanych same

Python 3.11–3.13 (uv), Node 20/22/24, Bun, Deno 2, Go, Rust, Java 21 (Maven/Gradle), .NET 8/9, PHP 8.3 (FrankenPHP, Laravel), Ruby 3.3 (Rails, Puma) i Elixir. Środowisko rozpoznajemy po plikach: package.json, requirements.txt, go.mod, Cargo.toml, pom.xml, *.csproj, composer.json, Gemfile, mix.exs.

30+ gotowych szablonów

FastAPI nad Supabase, webhook Stripe, PDF (WeasyPrint), OCR, ffmpeg, scraper Playwright, boty Telegram/Discord/Slack, embeddingi i RAG przez AI Gateway, Rust Axum, Spring Boot, Laravel, Rails, .NET, NestJS i więcej — „Wdróż” jednym kliknięciem, z panelu, CLI lub MCP.

Pakiety systemowe bez Dockerfile

ffmpeg, Chromium, Tesseract, poppler, ImageMagick, LibreOffice i inne z białej listy instalujemy za Ciebie — popularne zależności (WeasyPrint, pytesseract) wykrywamy same.

Izolacja gVisor

Każdy worker w osobnym kontenerze: użytkownik bez uprawnień, system plików tylko do odczytu, limity CPU/RAM i własna sieć widząca wyłącznie Twoją bazę.

Rozmiary i repliki

Small 0,5 vCPU / 512 MB, Medium 1 vCPU / 1 GB, Large 2 vCPU / 4 GB — do 3 replik z rozkładem ruchu. Płacisz za godziny pracy.

Wersje i bezpieczne wdrożenia

Każde wdrożenie to nowy obraz. Gdy nowa wersja nie wystartuje, wracamy do poprzedniej; do wcześniejszych wracasz jednym kliknięciem.

Logi, metryki, alerty

Logi na żywo i z budowania, wykresy CPU i RAM oraz powiadomienia o pętli restartów i braku pamięci.

Środowiska i szablony

15 środowisk, które same się instalują

Wgraj kod lub archiwum — rozpoznajemy środowisko po plikach, instalujemy zależności i budujemy obraz. Własny Dockerfile też działa.

Python

  • Python 3.12
  • Python 3.13
  • Python 3.11

JavaScript

  • Node.js 22
  • Node.js 24
  • Node.js 20
  • Bun
  • Deno 2

Go

  • Go 1.24
  • Go 1.25
  • Go 1.23
  • Go 1.22

Rust

  • Rust

JVM

  • Java 21

.NET

  • .NET 9
  • .NET 8

PHP

  • PHP 8.3 (FrankenPHP)

Ruby

  • Ruby 3.3

Elixir

  • Elixir
Pakiety systemowe z białej listy:ffmpegchromiumtesseractpopplerimagemagickghostscriptpandoclibreofficewkhtmltopdfweasyprintfontslibvips

35 gotowych szablonów „Wdróż”

Każdy ma działający kod, opis zmiennych środowiskowych i informację, z których funkcji Supabase korzysta. Dostępne w panelu, przez CLI (hostbase workers init --template) i MCP.

Python · 19

  • FastAPI (HTTP)
  • Konsument kolejki pgmq (Python)
  • Backup bazy do S3 (cron)
  • Import CSV/Excel do Postgresa (FastAPI)
  • Synchronizacja z zewnętrznym API (cron)
  • Dzienny digest e-mail (cron)
  • Worker embeddingów (pgmq + pgvector)
  • API CRUD (FastAPI)
  • Odbiornik webhooków (Flask)
  • Agent LangGraph (FastAPI)
  • Miniatury i transkodowanie (ffmpeg + Pillow)
  • OCR (Tesseract)
  • Generator PDF (WeasyPrint)
  • Zadania w tle na pgmq (Celery-like)
  • RAG API (FastAPI + pgvector)
  • Raport tygodniowy do Storage (cron)
  • Scraper stron (Playwright)
  • Webhook Stripe (FastAPI)
  • Bot Telegram (long polling)

Node.js · 5

  • Zadanie cron (Node.js)
  • Bot Discord (discord.js)
  • API NestJS (TypeScript)
  • Bot Slack (Socket Mode)
  • Serwer WebSocket (ws)

Go · 2

  • Serwer HTTP (Go)
  • Usługa gRPC (Go)

Bun · 2

  • Serwer HTTP (Bun)
  • API Hono (Bun)

Deno · 1

  • API Oak (Deno 2)

.NET · 1

  • API CRUD (.NET 9 Minimal API)

Elixir · 1

  • API (Elixir, Plug + Bandit)

PHP · 1

  • API CRUD (Laravel 12)

Ruby · 1

  • API CRUD (Rails 7.2)

Rust · 1

  • API CRUD (Rust, Axum)

Java · 1

  • API CRUD (Spring Boot)

Zastosowania

Do czego zespoły tego używają

Przetwarzanie na żądanie

Generowanie PDF, miniaturki, OCR, konwersje — API HTTP z większą ilością RAM niż funkcja serverless.

Kolejki i zadania w tle

Konsument pgmq przetwarzający zamówienia, maile i synchronizacje bez limitu czasu.

Zadania cykliczne

Raporty nocne, sprzątanie danych i importy według harmonogramu cron.

Pozostałe elementy platformy

Wszystkie usługi współdzielą tę samą bazę, uwierzytelnianie i uprawnienia.

Zbuduj w weekend. Skaluj do milionów.

Załóż darmowy projekt w 2 minuty. Bez karty kredytowej, bez pauzowania po tygodniu.