Rumah > pembangunan bahagian belakang > Golang > Mengapa Bekas Docker GoLang Saya Mendapat Ralat 'sijil yang ditandatangani oleh pihak berkuasa yang tidak diketahui'?

Mengapa Bekas Docker GoLang Saya Mendapat Ralat 'sijil yang ditandatangani oleh pihak berkuasa yang tidak diketahui'?

Mary-Kate Olsen
Lepaskan: 2024-12-01 02:43:10
asal
820 orang telah melayarinya

Why Does My GoLang Docker Container Get a

Isu Kontena Docker: Sijil Ralat Ditandatangani oleh Pihak Berkuasa Tidak Diketahui

Menjalankan bekas Docker menggunakan http.Client GoLang boleh mengakibatkan mesej ralat " sijil yang ditandatangani oleh pihak berkuasa yang tidak diketahui." Isu ini telah dihadapi apabila mencipta bekas dari awal atau menggunakan imej Ubuntu/Alpine.

Untuk memahami masalah, adalah penting untuk ambil perhatian bahawa http.Client menggunakan konfigurasi TLS dalam stor sijil sistem. Apabila bekas dibuat dari awal, ia tidak mempunyai sebarang sijil yang dipercayai secara lalai.

Penyelesaian:

Penyelesaian kepada isu ini bergantung pada jenis Docker imej yang anda gunakan:

Calar Imej:

  1. Sertakan sijil yang dipercayai dalam imej anda. Sebagai contoh, anda boleh menambah fail ca-certificates.crt pada direktori /etc/ssl/certs:
FROM scratch
ADD ca-certificates.crt /etc/ssl/certs/
ADD main /
CMD ["/main"]
Salin selepas log masuk

Imej Berbilang Peringkat:

  1. Tambahkan pakej sijil-ca semasa pembinaan peringkat:
FROM golang:alpine as build
RUN apk --no-cache add ca-certificates
Salin selepas log masuk
  1. Salin sijil dari peringkat binaan ke imej akhir:
FROM scratch
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=build /go/bin/app /app
ENTRYPOINT ["/app"]
Salin selepas log masuk

Dengan memasukkan sijil yang dipercayai dalam imej Docker , http.Client anda akan dapat mengesahkan sijil pelayan dan berjaya membuat permintaan HTTPS ke API Google.

Atas ialah kandungan terperinci Mengapa Bekas Docker GoLang Saya Mendapat Ralat 'sijil yang ditandatangani oleh pihak berkuasa yang tidak diketahui'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan