解决

先说解决办法:

  1. docker build --network=host .
  1. 使用 Dockerfile 来 docker build 镜像时,默认使用的 bridge 网络环境;而 RUN 等命令经常需要联网下载依赖,由于公司加密软件的限制,造成RUN命令使用bridge时无法联网
  2. 想到使用 host 网络应该可以上网,host网络中,docker 容器没有自己的网卡和ip,不使用birdge网络,直接使用本机的网络;只要本机可以上网,docker build时的RUN命令就可以使用网络

注意

docker run 使用的网络和docker build时使用网络,是两个独立的网络,比如docker build时指定了host网络,但是不影响docker run时使用的网络,docker run可以指定自己的网络,如bridge

来源

docker build以及docker run时使用host网络的方法