Preskoči na vsebino

Daytona

Daytona omogoča izvajanje terminala in predogleda Termbridge v oblačnem peskovniku. Uporabite to možnost, če želite ponovljivo okolje, predogled v oblaku ali če želite, da vaš prenosnik miruje.

Zahteve

  • Ključ Daytona API
  • Repozitorij URL, ki ga peskovnik lahko klonira
  • Poverilnice Git, če je repozitorij zaseben

Hiter začetek

Zaledni sistem nastavite na Daytona in podajte konfiguracijo repozitorija:

Lupina
export TERMBRIDGE_BACKEND=sandbox-daytona
export TERMBRIDGE_DAYTONA_API_KEY=your_key
export TERMBRIDGE_SANDBOX_REPO=https://github.com/you/your-repo.git
export TERMBRIDGE_SANDBOX_BRANCH=main
export TERMBRIDGE_SANDBOX_PATH=your-repo
export TERMBRIDGE_SANDBOX_NAME=termbridge-sandbox
export TERMBRIDGE_SANDBOX_PUBLIC=true
export TERMBRIDGE_SANDBOX_PREVIEW_PORT=5173
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true

Nato zaženite Termbridge kot običajno:

Lupina
npx termbridge

Vedno nastavite TERMBRIDGE_SANDBOX_REPO (ali --sandbox-repo). Če manjka, Termbridge trenutno uporabi vgrajeni privzeti repozitorij, ki ni javno dostopen, zato se peskovnik ustvari, kloniranje pa spodleti (#2).

Povezava Daytona

Spremenljivka Namen
TERMBRIDGE_DAYTONA_API_KEY Vaš ključ Daytona API
TERMBRIDGE_DAYTONA_API_URL Končna točka API (privzeto https://app.daytona.io/api)
TERMBRIDGE_DAYTONA_TARGET Ciljna regija Daytona (izbirno)

Te vrednosti se posredujejo v SDK Daytona. Če katera od njih ni nastavljena, SDK uporabi svojo spremenljivko DAYTONA_API_KEY, DAYTONA_API_URL ali DAYTONA_TARGET.

Neposredni način peskovnika (brez tunela)

V neposrednem načinu se strežnik Termbridge izvaja v peskovniku, Cloudflare pa je povsem izpuščen. Povezava za skupno rabo URL je predogledna povezava Daytona do strežnika v peskovniku.

Lupina
export TERMBRIDGE_BACKEND=sandbox-daytona
export TERMBRIDGE_SANDBOX_DIRECT=true
export TERMBRIDGE_SANDBOX_SERVER_PORT=8080

TERMBRIDGE_SANDBOX_SERVER_PORT (ali --port) je privzeto nastavljen na 8080. Neposredni način ustvari javni peskovnik, razen če nastavite TERMBRIDGE_SANDBOX_PUBLIC=false, možnost UI pa skrije preklopnik terminalov.

Predogled lahko še vedno omogočite z nastavitvijo TERMBRIDGE_SANDBOX_PREVIEW_PORT; v neposrednem načinu se posreduje kot vrata strežnika --proxy.

Kloniranje repozitorija

Termbridge bo ustvaril peskovnik in kloniral vaš repozitorij v delovno mapo peskovnika.

Uporabite te nastavitve:

Spremenljivka Namen
TERMBRIDGE_SANDBOX_REPO URL repozitorija za kloniranje (vedno ga nastavite, glejte hitri začetek)
TERMBRIDGE_SANDBOX_BRANCH Veja za prevzem (izbirno)
TERMBRIDGE_SANDBOX_PATH Pot do repozitorija v peskovniku (izbirno)
TERMBRIDGE_SANDBOX_NAME Ime peskovnika (izbirno, privzeto termbridge-<random hex>)

Če TERMBRIDGE_SANDBOX_PATH ni nastavljen, ga Termbridge izpelje iz imena repozitorija.

Zasebni repozitoriji

Pri kloniranju zasebnih repozitorijev navedite poverilnice git:

Lupina
export TERMBRIDGE_SANDBOX_GIT_USERNAME=your_github_username
export TERMBRIDGE_SANDBOX_GIT_TOKEN=your_github_token

Podprt je tudi TERMBRIDGE_SANDBOX_GIT_PASSWORD, ki ob nastavitvi preglasi žeton.

Agenti za kodiranje

Termbridge lahko namesti agente za kodiranje v peskovnik in sinhronizira vašo lokalno avtentikacijo, da so takoj pripravljeni.

Za celotno nastavitev, samodejni način in varnostne podrobnosti glejte vodnik Agenti za kodiranje.

Način predogleda

Če želite prikazati pogled predogleda, nastavite TERMBRIDGE_SANDBOX_PREVIEW_PORT na vrata, ki jih vaš razvojni strežnik uporablja v peskovniku.

Za Vite se prepričajte, da posluša na vseh vmesnikih:

Lupina
npm run dev -- --host 0.0.0.0 --port 5173

Termbridge pridobi povezavo za predogled Daytona in jo posreduje prek strežnika Termbridge, da se predogled naloži znotraj UI.

Javni in zasebni peskovniki

Spremenljivka Kaj počne
TERMBRIDGE_SANDBOX_PUBLIC=true Ustvari javni peskovnik
TERMBRIDGE_SANDBOX_PUBLIC=false Ustvari zasebni peskovnik

Če spremenljivka ni nastavljena, so peskovniki zasebni, razen v neposrednem načinu, kjer so javni.

Pri zasebnih peskovnikih Termbridge med posredovanjem predogleda samodejno posreduje žeton za predogled.

Čiščenje in življenjski cikel

Če želite izbrisati peskovnike, ko se Termbridge konča:

Lupina
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true

Za kratkotrajne ali testne peskovnike uporabite predpono:

Lupina
export TERMBRIDGE_SANDBOX_NAME=termbridge-test-$(date +%s)
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true

Tako boste imeli porabo peskovnikov pod nadzorom in se izognili težavam s količinsko omejitvijo diska.

Zastavice CLI

Daytona lahko konfigurirate tudi z zastavicami. Zastavica ima prednost pred ustrezno spremenljivko okolja.

Zastavica Spremenljivka okolja Namen
--backend sandbox-daytona TERMBRIDGE_BACKEND Uporabi zaledni sistem Daytona
--sandbox-repo <url> TERMBRIDGE_SANDBOX_REPO Repozitorij URL
--sandbox-branch <branch> TERMBRIDGE_SANDBOX_BRANCH Veja
--sandbox-path <path> TERMBRIDGE_SANDBOX_PATH Pot do repozitorija v peskovniku
--sandbox-name <name> TERMBRIDGE_SANDBOX_NAME Ime peskovnika
--sandbox-preview-port <port> TERMBRIDGE_SANDBOX_PREVIEW_PORT Vrata za predogled
--sandbox-public TERMBRIDGE_SANDBOX_PUBLIC=true Ustvari javni peskovnik
--sandbox-direct TERMBRIDGE_SANDBOX_DIRECT=true Zažene strežnik v peskovniku (brez tunela)

Zastavice za zasebni peskovnik ni; uporabite TERMBRIDGE_SANDBOX_PUBLIC=false. Vgrajeni izpis termbridge --help še vedno prikazuje imena --daytona-* in --backend daytona, ki so zavrnjena (#1).

Odpravljanje težav

Pogled predogleda je prazen

  • Preverite, ali se razvojni strežnik izvaja v peskovniku.
  • Uporabite --host 0.0.0.0, da bodo vrata za predogled dosegljiva.
  • Preverite, ali se TERMBRIDGE_SANDBOX_PREVIEW_PORT ujema z vrati razvojnega strežnika.

Ustvarjanje peskovnika spodleti zaradi napake glede kvote

  • Izbrišite stare peskovnike na nadzorni plošči Daytona.
  • Za kratkotrajne seje uporabite TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true.

Kloniranje repozitorija spodleti

  • Preverite URL repozitorija URL, vejo in poverilnice.
  • Prepričajte se, da ima žeton Git dostop za branje repozitorija.