DO - Functions

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Taarifa Msingi

DigitalOcean Functions, inayojulikana pia kama "DO Functions," ni jukwaa la kompyuta lisilo na seva ambalo linakuruhusu kuendesha nambari bila wasiwasi kuhusu miundombinu inayosaidia. Kwa DO Functions, unaweza kuandika na kupeleka nambari yako kama "kazi" ambazo zinaweza kutumiwa kupitia API, ombi la HTTP (ikiwa imezimwa) au cron. Kazi hizi hutekelezwa katika mazingira yaliyosimamiwa kabisa, hivyo hauitaji kuhangaika kuhusu upanuzi, usalama, au matengenezo.

Katika DO, ili kuunda kazi kwanza unahitaji kuunda nafasi ambayo itakuwa kikundi cha kazi. Ndani ya nafasi unaweza kisha kuunda kazi.

Vichocheo

Njia ya kuanzisha kazi kupitia REST API (daima imezimwa, ni njia ambayo cli inatumia) ni kwa kuanzisha ombi na alama ya uthibitisho kama:

curl -X POST "https://faas-lon1-129376a7.doserverless.co/api/v1/namespaces/fn-c100c012-65bf-4040-1230-2183764b7c23/actions/functionname?blocking=true&result=true" \
-H "Content-Type: application/json" \
-H "Authorization: Basic MGU0NTczZGQtNjNiYS00MjZlLWI2YjctODk0N2MyYTA2NGQ4OkhwVEllQ2t4djNZN2x6YjJiRmFGc1FERXBySVlWa1lEbUxtRE1aRTludXA1UUNlU2VpV0ZGNjNqWnVhYVdrTFg="

Ili kuona jinsi doctl zana ya cli inavyopata token hii (ili uweze kuiga), amri ifuatayo inaonyesha mfuatilio kamili wa mtandao:

doctl serverless connect --trace

Wakati kipimo cha HTTP kimezimwa, kazi ya wavuti inaweza kuitwa kupitia njia za HTTP GET, POST, PUT, PATCH, DELETE, HEAD na OPTIONS.

Katika kazi za DO, mazingira ya mazingira hayawezi kuwa yamefichwa (wakati wa kuandika hii). Sikupata njia yoyote ya kusoma kutoka kwa CLI lakini kutoka kwa konsoli ni rahisi.

URL za Kazi zinaonekana kama hii: https://<random>.doserverless.co/api/v1/web/<namespace-id>/default/<function-name>

Uchambuzi

# Namespace
doctl serverless namespaces list

# Functions (need to connect to a namespace)
doctl serverless connect
doctl serverless functions list
doctl serverless functions invoke <func-name>
doctl serverless functions get <func-name>

# Logs of executions
doctl serverless activations list
doctl serverless activations get <activation-id> # Get all the info about execution
doctl serverless activations logs <activation-id> # get only the logs of execution
doctl serverless activations result <activation-id> # get only the response result of execution

# I couldn't find any way to get the env variables form the CLI

Hakuna kituo cha metadata kutoka kwa sanduku la Functions.

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Last updated