解決docker訪問外部https數(shù)字證書問題
一般我們構(gòu)建的 docker 鏡像使用的都是 alpine linux 系統(tǒng),默認(rèn)是不帶 ca-certificates 根證書的,導(dǎo)致無法識別外部 https 攜帶的數(shù)字證書。
在訪問的時候,會拋出509:certificate signed by unknown authority
錯誤,導(dǎo)致 docker 容器的接口服務(wù)返回報錯。
為了解決證書驗證的問題,我們需要在構(gòu)建 docker 鏡像的時候?qū)?ca-certificates 根證書裝上。
在 Dockerfile 中加入如下內(nèi)容:
RUN apk --no-cache add ca-certificates \ && update-ca-certificates
對于已經(jīng)構(gòu)建好的鏡像,如果我們想手動安裝的話,可以使用如下方法。
# 進(jìn)入容器 docker exec -it '容器ID或容器名稱' bash # 安裝根證書 apk --no-cache add ca-certificates && update-ca-certificates # 若出現(xiàn)類似如下的警告,忽略 WARNING: ca-certificates.crt does not contain exactly one certificate or CRL: skipping # 重啟容器 docker restart '容器ID或容器名稱'
補充:下面看下docker 訪問外部 https 的數(shù)字證書驗證問題
我們在構(gòu)建 docker 鏡像時一般使用的是 alpine linux 系統(tǒng),默認(rèn)是不帶 ca-certificates 根證書的,導(dǎo)致無法識別外部 https 攜帶的數(shù)字證書。
那么,在訪問的時候就會拋出 x509: certificate signed by unknown authority 的錯誤,導(dǎo)致 docker 容器的接口服務(wù)返回 500。
為了解決證書驗證的問題,我們要在構(gòu)建 docker 鏡像的時候把 ca-certificates 根證書給裝上,這樣就能識別來自外部 https 的數(shù)字證書了。
在編輯 Dockerfile 的時候加入以下命令即可:
RUN apk --no-cache add ca-certificates \ ? && update-ca-certificates
如果不想重新構(gòu)建鏡像的話,可以直接進(jìn)入容器:
$ docker exec -it '容器ID或容器名稱' bash
然后執(zhí)行安裝根證書命令:
$ apk --no-cache add ca-certificates && update-ca-certificates
出現(xiàn)以下警告,可以忽略:
WARNING: ca-certificates.crt does not contain exactly one certificate or CRL: skipping
然后重啟容器即可:
$ docker restart '容器ID或容器名稱'
到此這篇關(guān)于docker訪問外部https數(shù)字證書問題的文章就介紹到這了,更多相關(guān)docker訪問https內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
idea使用docker生成鏡像(打包鏡像,導(dǎo)入鏡像,導(dǎo)出鏡像)
使用docker鏡像,可以快速地部署和運行應(yīng)用程序,而無需擔(dān)心環(huán)境差異、依賴項問題等,本文主要介紹了idea使用docker生成鏡像,具有一定的參考價值,感興趣的可以了解一下2024-02-02docker daemon遠(yuǎn)程連接設(shè)置詳解
本篇文章主要介紹了docker daemon遠(yuǎn)程連接設(shè)置詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04docker啟動elasticsearch時內(nèi)存不足問題及解決方法
這篇文章主要介紹了docker啟動elasticsearch時內(nèi)存不足問題,本文給大家分享安裝過程及解決方法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07快速使用docker-compose部署clickhouse的教程
ClickHouse 的工作速度比傳統(tǒng)方法快 100-1000 倍。它適用于大數(shù)據(jù)、業(yè)務(wù)分析和時間序列數(shù)據(jù)。在這個小教程中,我將向您展示如何以最少的設(shè)置安裝 ClickHouse,感興趣的朋友一起看看吧2021-11-11docker部署minio并使用springboot連接的操作方法
這篇文章主要介紹了docker部署minio并使用springboot連接的操作方法,本文以minio為例結(jié)合實例代碼給大家詳細(xì)講解,需要的朋友可以參考下2023-11-11Docker部署MySQL主從復(fù)制的實現(xiàn)
本文主要介紹了Docker部署MySQL主從復(fù)制的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-10-10