You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

构建Docker镜像时安装requests组件出现InsecureRequestWarning问题求助

解决Docker构建时pip安装requests出现InsecureRequestWarning的问题

我之前在Docker镜像构建时也踩过这个坑!你虽然加了--trusted-host参数,但这个参数只是让pip信任指定的主机,不会阻止urllib3(requests依赖的底层库)抛出未验证HTTPS请求的警告。下面给你几个实用的解决办法:

1. 安装系统根证书(最推荐,安全合规)

这个方法从根源解决问题——让pip能正常验证HTTPS证书,自然就不会有警告了。如果你的基础镜像是Debian/Ubuntu系列,在Dockerfile里先安装ca-certificates包:

# 安装系统根证书
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates \
    && rm -rf /var/lib/apt/lists/*

# 现在直接安装requests即可,不需要加一堆--trusted-host
RUN pip install requests

如果是Alpine镜像,用apk add ca-certificates就行:

RUN apk add --no-cache ca-certificates
RUN pip install requests

2. 临时禁用警告(不推荐,仅应急用)

如果暂时没法安装证书,你可以通过设置环境变量来让Python忽略这个警告:

RUN PYTHONWARNINGS="ignore:InsecureRequestWarning" pip install --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org requests

不过要注意,这个方法只是隐藏警告,并没有解决证书未验证的安全问题,所以尽量少用。

3. 切换到国内合规的PyPI镜像

如果是因为网络原因导致证书验证失败,试试国内的PyPI镜像源,比如清华或阿里云的镜像,这些源的HTTPS证书都是正常可验证的,不需要加--trusted-host:

RUN pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple

简单总结下:--trusted-host只是让pip绕过主机信任检查,但urllib3还是会因为缺少证书验证触发警告,所以最稳妥的方式还是安装系统根证书,确保HTTPS连接的安全性。

内容的提问来源于stack exchange,提问作者Swathi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 15:23:17