BuildKit: Ko te Taonga Huna a Docker ka taea te hanga tata ki nga mea katoa
Nga korero
Mewayz Team
Editorial Team
BuildKit: Kohatu Huna a Docker ka taea te hanga tata ki nga mea katoa
Ko te nuinga o nga kaiwhakawhanake e mohio ana ko Docker te wa whakahaere ipu i whakarereke i te tukunga rorohiko. He iti ake te mohio mo te miihini e hamumu marie ana i raro i te mata o nga hangahanga hou o Docker hou - BuildKit, te punaha hanga-whakatupuranga o muri mai kua tukuna me Docker mai i te putanga 18.09 ka noho hei tuara taunoa i Docker 23.0. Ahakoa te tautohetohe kore mutunga a nga miihini mo nga whirihoranga Kubernetes me nga tauira ratonga moroiti, kua huri haere tonu a BuildKit ki tetahi o nga punaha hanga tino kaha, ngawari i roto i te puunaha rauwiringa kaiao DevOps. Mena kei te whakaaro koe he tere ake te hanga docker, ka waiho e koe te kaha nui ki runga i te teepu. Ko nga kamupene e whakahaere ana i nga paipa paipa CI/CD teitei kua tapahia nga wa hanga ma te 50–70% ma te mohio noa ki ta BuildKit e tuku ana — a koinei te timatanga.
He aha te mea i rereke ai a BuildKit ki te Kaihanga Tauhira
Ko te miihini hanga a Docker taketake i whakahaere i nga tohutohu a Dockerfile, kotahi te paparanga i ia wa, me te kore mohio he aha nga mahi ka taea te mahi whakarara. Ka whakakapihia e BuildKit taua tauira mahi ahorangi ki te kauwhata acyclic (DAG) — he kauwhata whakawhirinaki e mohio ana ko nga waahanga hanga e whakawhirinaki ana tetahi ki tetahi, kaore e mahi. Ko nga waahanga motuhake ka mahi i te wa kotahi, ka pekehia nga waahanga kaore i whakamahia, ka waiho te katoa o te hanga hei whakamaarama whakamaarama mo nga mea e hiahia ana koe, kaua ki te raupapa o nga hikoinga me korero e koe i runga i te raupapa tika.
Ko tenei nekehanga hoahoanga he hua whai hua ka nui atu i te tere. Ina whakahiatohia e te Dockerfile-waahanga-----------------------------------------------tangohia nga whakawhirinakitanga Node.js ki tetahi atu, ka whakahiato i tetahi whakaahua hanga i te tuatoru, ka taea e BuildKit te whakahaere i nga waahanga tuatahi e rua i te wa kotahi. He hangahanga e wha meneti i mua i runga i te kaikawe CI kaha inaianei ka oti i raro i te iwa tekau hēkona. Ko Stripe, Shopify, me etahi atu o nga roopu miihini teitei i tuhi i nga whiwhinga rite ki o raatau tirohanga whakamuri taputapu. Ko te tikanga o te tauira DAG ka taea e BuildKit te whakaputa metadata hanga tino tika - he turanga mo nga ahuatanga penei i nga tohu tohu me te reanga rorohiko pire rauemi (SBOM) he mea nui mo te haumarutanga mekameka tuku.
He hurihanga ariā ano mo te mahi muhu keteroki. I whakakorehia e te kaihanga matarohia ia paparanga i raro i nga tohutohu kua whakarereketia. Ka whai a BuildKit i nga hashes ihirangi i ia whakaurunga, no reira ko te whakarereke i tetahi korero i roto i te Dockerfile e kore e pupuhi i te urunga keteroki e tohu ana mo te toru tekau meneti o te whakahiato. Ina ko to keteroki hanga te rereketanga i waenga i te rima meneti me te wha tekau meneti te hurihanga urupare mo to roopu miihini, he mea nui ake tenei tika i te ahua o te tuatahi.
Hanga-Waihanga Maha: Kotahi Whakahau, Ia Hoahoanga
Ko te --platform te haki me te whakauru QEMU a BuildKit ka huri i te raru o te ruruku punaha-maha i mua ki te tono kotahi. Ko te whakahaere docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 . ka whakaputa e toru nga whakaahua kua rite ki te hanga-whakarara mai i te tono hanga kotahi. Kua tino nui tenei kaha i te hurihanga o te ahumahi ki te ARM — AWS Graviton3 i nga wa katoa ka 40% pai ake te utu-mahi i runga i nga kawenga mahi penei i te tuku tukutuku me te tukatuka raraunga, a kua hanga e Apple Silicon te ARM hei miihini whanaketanga taunoa mo nga miriona miihini.
I mua i te pakaritanga o te tautoko papa-maha a BuildKit, ko te pupuri i nga paipa hanga motuhake mo nga hoahoanga rereke he pokapū utu tuturu. Ko nga roopu i pupuri i nga Dockerfiles maha, i whakahaere i nga paipa CI motuhake i runga i nga kaikawe rereke-hangaia, ka tukuna noa ranei nga whakaahua x86 ki nga waahi katoa ka utua te whiunga mahi mo nga hanganga ARM. Ma te BuildKit, ka tautuhia e koe to hanga kotahi ka waiho ma te punaha te whakahaere i te whakahiato-ahuatanga kia marama. Ko nga kaupapa waikura e hiahia ana ki te whakahiato-whakawhitiwhiti, Ko nga kaupapa Haere me nga herenga CGO, nga kohinga Python me nga toronga C — Ka hapai a BuildKit i te paparanga tauira me te kore e hiahia kia mohio koe ki nga korero mo ia papaapapa kua tohua.
Ka ine te uara pakihi whaihua i konei. Ko te roopu e whakahaere ana i nga ipu 200 i runga i nga waa AWS Graviton i te $0.04 mo ia vCPU-haora ki te tauira x86 rite ki te $0.056 ia vCPU-haora ka penapena tata ki te $11,520 ia tau mo ia 100 vCPU — ma te whiriwhiri i te hoahoanga tika. Ko te whai waahi ki taua kowhiringa me te kore e whakapau kaha ki te mahi miihini ano te ahua o te arotautanga hanganga e utu tonu ana.
Whakahaere Huna me te kore e turuturu ki nga paparanga whakaahua
Ko tetahi o nga ahuatanga BuildKit e tino mihia ana ko ona API ngaro. Ko te Kaihanga Docker matarohia kaore he huarahi ma ki te tuku i nga tohu ki roto i te hanga me te kore o enei tohu ka mutu pea ki te paparanga whakaahua. I mahi nga kaiwhakawhanake me te hanga-maha-waahanga, ARG tohutohu, me te ota tupato — engari ko te tupono ki te tunu pohehe i te kii API, ki te kii SSH motuhake ranei ki roto i te atahanga kua tukuna, kare tonu i te pai. I nga wa katoa ka kitea e nga kaitirotiro haumarutanga nga tohu tohu paanui i roto i nga whakaahua ipu kua whakaputaina ki nga rehita a te iwi, a ko te nuinga o aua riihanga ka hoki tika mai ki te mahi huna huna i te wa e hanga ana.
Ko te --secret te haki a BuildKit ka whakairi i nga raraunga tairongo ki roto i te taiao hanga hei ara punaha konae rangitahi e noho ana mo te roanga o te tohutohu RUN e tika ana kia kaua e pa ki tetahi paparanga atahanga. He tohutohu Dockerfile penei i te RUN --mount=type=secret,id=npmrc cat /run/secrets/npmrc > ~/.npmrc && npm install ka hoatu ki te tukanga hanga te uru ki nga tiwhikete npm tūmataiti me te kore e puta ake aua tohu ki te ahua whakamutunga, ki tetahi paparanga takawaenga ranei. He rite tonu te tauira mo nga tohu PyPI, nga tautuhinga Maven, nga taviri SSH mo nga putunga Git tūmataiti, me etahi atu mea tairongo e hiahiatia ana e to mahi hanga.
Mo nga roopu hanga rorohiko e pa ana ki nga umanga kua whakaritea - nga papaaa hauora, nga hua fintech, nga punaha HR - ko te rereketanga i waenga i "kei te ahua o nga tohu" me "kaore e taea te whakaatu i nga tohu" te rereketanga i waenga i te tuku i te arotakenga haumaru me te whakapau i nga wiki e toru ki te whakatika i nga kitenga. Ko nga papaaho pera i a Mewayz, e kaha ana nga mahi pakihi mo te neke atu i te 138,000 nga kaiwhakamahi puta noa i nga umanga penei i te utu utu, HR, me te nama, e whakawhirinaki ana ki tenei ahua o te tuunga haumarutanga i roto i o raatau hanga me te tuku paipa hei pupuri i te whakawhirinaki ka tukuna atu e nga kaihoko ki o raatau raraunga putea me nga kaimahi.
Kaweake Keteroki: Te Hanga CI Pipeline Tino Tere
Ko nga raina paipa CI te waahi tino nui o nga mahi hanga me te waahi i tino mamae ai te wheako hanga Docker taunoa. Ko nga kaiwhaiwhai CI hou ka tiimata me nga keteroki kau, ko te tikanga ko nga oma paipa katoa ka kohia nga mea katoa mai i te wahanga. Mo te ratonga Java me nga rau o Maven e whakawhirinaki ana, he kaupapa Rust, he tono Python ranei me te taumaha o nga toronga taketake, ko te tikanga o te hanga i nga wa ine i roto i nga meneti tekau, kaua ki te hēkona. He nui te utu pakihi mo te CI puhoi — kua whakahekehia te maha o te tuku, he roa ake nga kopae urupare, me nga miihini e noho mangere ana e tatari ana kia oti nga paipa i mua i te whakakotahi me te neke haere.
Ko te ahuatanga kaweake keteroki a BuildKit e whakaoti ana me nga whakaaturanga keteroki kaweake. Ma te whakamahi --cache-to type=registry,ref=myregistry/myapp:cache me --cache-from type=registry,ref=myregistry/myapp:cache, ka pana a BuildKit i tetahi whakaahua keteroki taipitopito ki tetahi rehita i muri i ia hanga ka toia i te timatanga o te waa e whai ake nei. Ko te keteroki he korero-a-roto, no reira ka tikina ano nga paparanga kua whakarereketia. Ko nga roopu e whakamahi ana i tenei tauira i roto i nga Mahi a GitHub, GitLab CI, me te CircleCI ka tapahia nga wa paipa mai i te tekau ma rima meneti ki raro i te toru i runga i nga oma o muri. Ko nga tuhinga ake a GitHub mo nga rerengamahi hanga Docker matatau e tino taunaki ana i tenei tauira mo tenei take.
Ko te hanga tere ko te mea karekau koe e rere ano. Ko te punaha keteroki whakakikoruatia o BuildKit, e whai kiko ana ki te keteroki e kore e tere noa i te hanga — na te mea ka maarama ake te kaupapa katoa o te "hanga", ka huri i te whakahiato tukurua ki te rereketanga o nga mea kua huri.
Ko nga kaweake keteroki ka uru marie ki nga rerenga mahi whanaketanga e ahu mai ana i te peka. Ka taea e koe te whirihora i to paipa CI kia hoki whakamuri mai i te keteroki peka-motuhake ki te keteroki manga matua ina karekau he keteroki manga, ko te tikanga ka whai hua tonu nga manga hou mai i te keteroki mahana kua whakaemihia e to raina whanaketanga matua. He tere nga urupare a nga miihini mai i ta raatau mahi tuatahi mo te peka hou, kaua ki te tatari mo te whiunga makariri.
💡 DID YOU KNOW?
Mewayz replaces 8+ business tools in one platform
CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.
Start Free →Nga Whakamutunga HangaKit: Hangahanga i tua atu o Dockerfiles
Ko te kaha o te BuildKit ko te Dockerfiles tetahi noa te whakatakotoranga whakauru - ehara ko te mea anake. He hoahoanga o mua a BuildKit ka taea te hanga i nga reo whakamaarama me nga whakatakotoranga. Ko te pito o mua e tohuhia ana e te whakahau # syntax= kei runga ake o to konae hanga, e kii ana ki a BuildKit kia toia tetahi atahanga o mua ka whakamahi ki te poroporo me te mahi i te toenga o te konae.
Kua taea e tenei hoahoanga etahi kaupapa whakahihiri. Ma te whakaurunga o Buildpacks ka taea e BuildKit te hanga whakaahua ipu mai i te waehere puna tono me te kore rawa he Dockerfile — ka kitea te reo, ka kowhiri i nga whakaahua turanga tika, ka whakahiato aunoa i tetahi ipu kua rite. Kua whakamahia e te HPC me nga hapori rorohiko putaiao nga ritenga o mua ki te whakaahua i nga hanga i roto i nga reo motuhake-a-rohe e whakahiato ana ki te whakaaturanga LLB o roto o BuildKit (Hanga-Taumata-Taumata). Ko te docker/dockerfile:labs nga whakamätau i mua o te wetereo me nga ahuatanga penei i te tautoko heredoc, --network mana mo ia tohutohu, me nga tohu keteroki whakarei ake i mua i te taunga ki te wetereo Dockerfile pumau.
Ko te kaha ki te tautuhi i to ake pito o mua ko te tikanga ko nga whakahaere me nga whakaritenga hanga rerekee karekau me whiriwhiri i waenga i te "whakatangihia nga mea katoa ki roto Dockerfile syntax" me te "whakarere katoa i nga ipu." Ka taea e te roopu hanga FPGA firmware, nga whakaahua punaha whakauru, nga ipu tauira ML motuhake ranei ka taea te whakaahua i o raatau hanga i runga i nga tikanga e tika ana mo o raatau rohe i te wa e whakaputa tonu ana i nga whakaahua ipu-a-OCI ka tukuna ki nga waahi katoa e rere ana nga ipu. Ko tenei whakaroatanga he tino painga mo te hoahoanga ki runga i nga punaha hanga e whakatau ana i o raatau whakatakotoranga whakauru.
Provenance and SBOM: Hangahanga mo te Ao-Pouri-SolarWinds
Ko te haumarutanga mekameka tuku rorohiko i neke mai i te maaharahara ariā ki te taumata o te poari matua i muri i te pakarutanga o SolarWinds i te tau 2020 me te whakaraeraetanga o Log4Shell i te tau 2021. Ko te Whakatau Whakahaere 14028 a te kawanatanga o Amerika mo te haumaru ipurangi, i tukuna i te marama o Mei 2021, i whakahau te pire rorohiko mo nga rauemi a te kawanatanga. Ko nga whakaaturanga a BuildKit me nga ahuatanga whakatipuranga SBOM he whakautu tika ki tenei whenua ture me te haumarutanga.
Ma te --provenance=true me --sbom=true haki, ka whakaputa a BuildKit i nga tohu tohu kua hainatia e whakaatu ana i nga mea i uru ki roto i te ahua ipu — he aha nga whakaahua i whakamahia, ko nga tohutohu a Dockerfile i mahia, ko nga konae puna kei reira, me nga whakawhirinakitanga o waho i tikina. E whai ana enei taunakitanga i te angamahi SLSA (Supply-chain Levels for Software Artifacts) me te whakatakotoranga o roto-toto, kia manatokohia e nga miihini kaupapa here penei i a Sigstore's Cosign me OPA (Open Policy Agent).
Penei te ahua o te rerengamahi whaihua:
- Ka pana te Kaiwhakawhanake i te waehere; Ko te paipa paipa CI ka whakaoho i te hangahanga BuildKit me te whakaahei.
- Ka hangaia e BuildKit he SBOM kua hainatia e whakarārangi ana i ngā wāhanga katoa me ō rātou putanga.
- Ka whakaputaina te SBOM ki te rehita ipu i te taha o te whakaaturanga atahanga.
- Ko nga kaiwhakahaere whakauru i roto i te roopu Kubernetes ka manatoko i te takenga i mua i te tuku tuku.
- Ka patai nga kaitirotiro whakaraerae ki te SBOM ki te tautuhi i nga whakaahua e pa ana ina whakaatu nga CVE hou.
Ka taea e nga kapa e whakatinana ana i tenei paipa katoa te whakautu ki nga korero whakaraeraetanga i roto i nga haora, kaua i nga ra, na te mea he mapi tika, ka taea e te miihini te panui o ia waahanga o ia ipu rere. Mo nga pakihi penei i a Mewayz e whakauru hohonu ana ki nga rerenga mahi whakahaere a nga kaihoko — te whakahaere utu utu, te whakahaere i nga raraunga o te waka, te tukatuka nama — ko te kaha ki te whakaatu i tetahi mekameka toha kaha, ka taea te tirotiro he mea nui ake mo nga korerorero hoko hinonga, ehara i te mea pai noa.
Te Timata: Mai i te Hanga Taunoa ki nga Raina Paipa Ake
Kei te rere kē a BuildKit i roto i to taiao Docker mena kei te whakamahi koe i tetahi putanga hou — Docker 23.0 a muri ake ka whakahohehia ma te taunoa. Ko te mahi mahi tuatahi mo te nuinga o nga kapa ko te whakaahei i te mono Docker Buildx, e whakaatu ana i nga ahuatanga katoa a BuildKit na roto i te docker buildxsubcommand. Ko te whakahaere docker buildx create --use ka whakarite i tetahi tauira kaihanga BuildKit me te kaha ake i te taraiwa taunoa. Mai i reira, ka whai tikanga te whakaurunga o nga ahuatanga matatau, kaua ki te ngana ki te tango i nga mea katoa i te wa kotahi.
Ko te huarahi whakatamarikitanga tika mo te roopu e mahi ana i tenei wa te hanga docker nga tono ka rite ki te taapiri i nga kaweake keteroki ki te CI i te tuatahi — ka tuku tere tere, ka taea te ine me te iti o te huringa whirihoranga. Ka whai hua nga hanga maha-turanga i te wa ka tiimata te roopu ki te aro ki nga hanganga ARM. Ko te whakapuru huna he mea pai ki te tango i nga wa katoa ka puta nga rehitatanga kete motuhake me nga taviri SSH i roto i te horopaki hanga. Ka whai tikanga nga whakaaturanga o mua ki te whakaahei i te wa e tika ana nga whakaritenga hanganga ture me nga tono a nga kaihoko hinonga e tika ana nga tuhinga mekameka tuku.
Ko te akoranga hohonu o BuildKit e pa ana ki te hanga whakaaro. Ahakoa kei te tukuna e koe he ipu mo te ratonga miihini, he tohu whakamohiotanga ako miihini, he papahanga uaua penei i te huinga pakihi 207 a Mewayz, ko te hangahanga ehara i te mea okawa e tere ana koe i te huarahi ki te tuku - he toi miihini e whakaatu ana i te kounga, te noho haumaru, me te pakeketanga whakahaere o nga mea katoa ka puta mai. Ka hoatu e BuildKit ki a koe nga taputapu kia pai ai taua taonga. Ko te patai noa mena ka whai wa koe ki te whakamahi.
Patai Auau
He aha te BuildKit me pehea te rereke mai i te punaha hanga Docker matarohia?
Ko BuildKit te miihini hanga-whakatupuranga a Docker, i whakauruhia ki Docker 18.09 ka waiho te taunoa ki Docker 23.0. Kaore i rite ki te kaihanga matarohia, kei te tautoko a BuildKit i nga mahi paparanga whakarara, i nga rautaki keteroki matatau, i nga mea ngaro, me te hanga-whakawhiti. Ka whakatauhia te tukanga hanga hei kauwhata acyclic tika (DAG), kia pai ake ai te whakatau i te whakawhirinakitanga me te tere tere ake o nga wa hanga mo nga konae Docker-waahi maha.
Me whakauru e au tetahi atu mea hei timata ki te whakamahi i te BuildKit me Docker?
Karekau he whakaurunga taapiri e hiahiatia ana mena kei te whakahaere koe i te Docker 23.0 i muri mai ranei — Kua whakahohea a BuildKit ma te taunoa. I nga putanga tawhito, ka taea e koe te whakahohe ma te tautuhi i te taurangi taiao DOCKER_BUILDKIT=1 i mua i te whakahaere i o whakahau hanga. Mo nga keehi whakamahi matatau penei i nga keteroki hanga mamao me te hanga papa-maha, ka hiahia pea koe ki te whirihora i tetahi tauira kaihanga Buildx i whakatapua ma te whakamahi docker buildx create.
Ka taea te whakamahi a BuildKit ki te hanga taonga i tua atu i nga whakaahua ipu paerewa?
Ae, a koinei tetahi o nga kaha o BuildKit e kore e maioha. Ma te whakamahi i nga ritenga o mua me te haki --output, ka taea e BuildKit te whakaputa i nga tohu-rua mata, tarballs, paetukutuku pateko, me etahi atu taonga toi konae - kaua ko nga whakaahua OCI anake. Na tenei he miihini hanga-whanui e uru ana ki roto i nga polyglot monorepos me nga raina paipa CI matatini e hiahia ana nga roopu rereke ki nga whakatakotoranga whakaputa rereke mai i te mekameka taputapu whakakotahi.
Me pehea e uru ai a BuildKit ki roto i te papanga DevOps whanui i te taha o nga taputapu penei i a Mewayz?
Ka whakahaerehia e BuildKit te paparanga hanga taumata-iti, engari me whakahaere ano e nga roopu whanaketanga hou nga rerengamahi pakihi, te tuku kiritaki, me nga tikanga whakahaere. Ko nga papanga penei i te Mewayz — he OS pakihi 207-waewae timata mai i te $19/mo — ki te whakakii i nga taputapu hanganga ma te kapi i te taha whakahaere o nga pakihi rorohiko. Ko te whakakotahi i nga paipa paipa hanga pai e whakakahangia ana e BuildKit me te papaa-katoa-i-kotahi penei i a Mewayz ka hoatu ki nga kapa he puranga katoa mai i te tohu toi ki te tuku kaihoko.
Try Mewayz Free
All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.
Get more articles like this
Weekly business tips and product updates. Free forever.
You're subscribed!
Start managing your business smarter today
Join 30,000+ businesses. Free forever plan · No credit card required.
Ready to put this into practice?
Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.
Start Free Trial →Related articles
Hacker News
The tool that won't let AI say anything it can't cite
Apr 10, 2026
Hacker News
YouTube locked my accounts and I can't cancel my subscription
Apr 10, 2026
Hacker News
CollectWise (YC F24) Is Hiring
Apr 10, 2026
Hacker News
Afrika Bambaataa, hip-hop pioneer, has died
Apr 10, 2026
Hacker News
Installing OpenBSD on the Pomera DM250{,XY?}
Apr 10, 2026
Hacker News
The Raft consensus algorithm explained through "Mean Girls" (2019)
Apr 10, 2026
Ready to take action?
Start your free Mewayz trial today
All-in-one business platform. No credit card required.
Start Free →14-day free trial · No credit card · Cancel anytime