Rumah >pembangunan bahagian belakang >Golang >## Bagaimana untuk Pra-Cache Go Dependencies dalam Imej Docker untuk Binaan Lebih Pantas?
Membina Imej Docker dengan Cekap dengan Kebergantungan Pra-cache
Apabila membina imej Docker, adalah penting untuk meminimumkan masa binaan. Satu strategi adalah untuk menyimpan kebergantungan. Walau bagaimanapun, ini memerlukan membina kebergantungan terlebih dahulu, yang boleh memakan masa.
Adakah terdapat cara untuk pra-membina berbilang kebergantungan yang disenaraikan dalam fail go.mod?
Jawapannya terletak pada menggunakan mekanisme caching Docker. Struktur Dockerfile yang dicadangkan termasuk lapisan caching yang penting:
FROM scratch COPY --from=build /out/example /
Langkah ini menyalin boleh laku terbina daripada peringkat binaan pertengahan ke dalam imej akhir. Walau bagaimanapun, bahan utama adalah dalam peringkat binaan:
RUN --mount=type=cache,target=/root/.cache/go-build go build -o /out/example .
Arahan ini melekapkan direktori cache go build lalai (/root/.cache/go-build) dan melaksanakan arahan go build. Cache memastikan bahawa kebergantungan dimuat turun dan disusun sekali sahaja, dengan ketara mengurangkan masa binaan untuk binaan seterusnya.
Untuk mendayakan caching, adalah penting untuk menetapkan pembolehubah persekitaran DOCKER_BUILDKIT kepada 1:
DOCKER_BUILDKIT=1 docker build -t myimage .
Dengan mengikuti langkah ini, anda boleh pra-bina semua kebergantungan dalam go.mod dan memanfaatkan caching untuk menyelaraskan binaan imej Docker anda.
Atas ialah kandungan terperinci ## Bagaimana untuk Pra-Cache Go Dependencies dalam Imej Docker untuk Binaan Lebih Pantas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!