Ketergantungan Pra-Pembinaan untuk Pembinaan Imej Docker yang Lebih Pantas
Membina imej Docker boleh menjadi proses yang memakan masa, terutamanya jika kebergantungan perlu dibina sebelum ia boleh dicache. Untuk mengoptimumkan proses ini, adalah mungkin untuk pra-membina semua modul yang diperlukan dan cache mereka.
Struktur Fail Docker
Struktur Fail Docker yang disyorkan untuk mencapainya adalah seperti berikut:
FROM docker.io/golang:1.16.7-alpine AS build WORKDIR /src COPY go.* . RUN go mod download COPY . . RUN --mount=type=cache,target=/root/.cache/go-build go build -o /out/example . FROM scratch COPY --from=build /out/example /
Bina dengan Docker BuildKit
FROM docker.io/golang:1.16.7-alpine AS build WORKDIR /src COPY go.* . RUN go mod download COPY . . RUN --mount=type=cache,target=/root/.cache/go-build go build -o /out/example . FROM scratch COPY --from=build /out/example /
Untuk menggunakan mekanisme caching ini dengan berkesan, anda mesti membina dengan Docker BuildKit didayakan. Anda boleh melakukan ini dengan menetapkan DOCKER_BUILDKIT=1 sebelum membina imej:
Sebagai alternatif, anda boleh menggunakan docker buildx:Dengan kebergantungan pra-pembinaan dan caching, anda boleh mengurangkan masa binaan imej Docker secara drastik, terutamanya untuk projek besar atau kompleks. Pengoptimuman ini boleh menjimatkan masa yang ketara semasa proses pembangunan dan penggunaan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengoptimumkan Binaan Imej Docker dengan Ketergantungan Pra-Binaan dan Menggunakan Caching Binaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!