Basisimage
Elke template begint vanuit een bronomgeving. De SDK ondersteunt verschillende ingangspunten, afhankelijk van hoeveel controle je nodig hebt.fromPythonImage(...)/from_python_image(...)voor een standaard Python-runtimefromUbuntuImage(...)/from_ubuntu_image(...)offromDebianImage(...)/from_debian_image(...)voor een standaard Linux-basisfromNodeImage(...)/from_node_image(...)enfromBunImage(...)/from_bun_image(...)voor taalspecifieke basesfromImage(...)/from_image(...)voor een willekeurig containerimagefromDockerfile(...)/from_dockerfile(...)wanneer je Dockerfile al de bron van waarheid isfromBaseImage()/from_base_image()om te starten vanuit de standaardbasis van het platformfromTemplate(...)/from_template(...)om boven op een andere template te bouwen
fromPythonImage("3.12") en from_python_image("3.12") zijn gelijkwaardig aan starten vanuit:
Dockerfile
Privéregisters
Als je basisimage zich in een privéregister bevindt, geef dan inloggegevens door bij het definiëren van de templatebron. De JS- en Python-SDK’s ondersteunen:- generieke registerinloggegevens met gebruikersnaam en wachtwoord
- AWS-registerinloggegevens
- GCP-registerinloggegevens
- Huawei Cloud-registerinloggegevens
Template definiëren
Met de builder-API kun je de uiteindelijke omgeving rechtstreeks in code samenstellen. Veelvoorkomende definitiestappen zijn onder andere:runCmd(...)/run_cmd(...)om pakketten te installeren of provisioning-opdrachten uit te voerencopy(...)om lokale bestanden op te nemenmakeDir(...),remove(...),rename(...), enmakeSymlink(...)voor het vormgeven van het bestandssysteemsetEnvs(...)/set_envs(...)voor omgevingsvariabelenpipInstall(...),npmInstall(...),bunInstall(...), enaptInstall(...)voor pakketconfiguratiegitClone(...)/git_clone(...)om code in het image op te nemen
Start- en ready-opdrachten
Gebruik een startopdracht wanneer de template tijdens het buildresultaat een langlopende service moet opstarten, en gebruik een ready-opdracht om te definiëren wanneer die service als gezond wordt beschouwd. Dit is handig voor webapps, API-servers, achtergrondwerkers en elke template die al geïnitialiseerd moet zijn wanneer een sandbox start.setReadyCmd(...) / set_ready_cmd(...).