Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Mengambil Ketergantungan Go secara Manual untuk Binaan Docker yang Lebih Pantas?
Salah satu konsep utama yang diperkenalkan dalam Go 1.11 ialah sokongan modul. Walaupun ciri pemasangan kebergantungan automatik biasanya bermanfaat, sesetengah kes penggunaan mungkin memerlukan pengambilan kebergantungan manual.
Sebagai contoh, dalam persekitaran binaan Docker, di mana perubahan kebergantungan jauh lebih kerap daripada perubahan kod, memanfaatkan caching lapisan Docker boleh mempercepatkan pembinaan semula dengan ketara dengan memisahkan peringkat pemasangan pergantungan daripada binaan peringkat.
Go sekarang menyediakan penyelesaian kepada cabaran ini. Terima kasih kepada isu #26610, anda boleh menggunakan arahan muat turun mod go untuk mengambil kebergantungan secara manual. Perintah ini hanya memerlukan kehadiran fail go.mod dan go.sum.
Berikut ialah contoh binaan Docker berbilang peringkat cache yang menggunakan teknik ini:
FROM golang:1.17-alpine as builder RUN apk --no-cache add ca-certificates git WORKDIR /build # Fetch dependencies COPY go.mod go.sum ./ RUN go mod download # Build COPY . ./ RUN CGO_ENABLED=0 go build # Create final image FROM alpine WORKDIR / COPY --from=builder /build/myapp . EXPOSE 8080 CMD ["./myapp"]
Selain itu, artikel "Bendungkan Persekitaran Pembangun Go Anda – Bahagian 2" memberikan pandangan berharga tentang memanfaatkan cache pengkompil Go untuk meningkatkan lagi kelajuan binaan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengambil Ketergantungan Go secara Manual untuk Binaan Docker yang Lebih Pantas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!