docker build配置代理
在通过Dockerfile进行构建镜像时,经常会遇到容器内依赖无法下载的情况,这种原始是由于部分依赖在国内无法访问,必须通过代理进行转发。
配置
创建~/.docker/config.json文件,并配置如下信息:
1  | {  | 
- httpProxy:设置http网络访问的代理
 - httpsProxy:配置https网络访问的代理
 - allProxy:配置其他网络访问的代理
 
原理
docker会在启动容器时,将以上配置的json,转换为环境变量的形式,上面的配置类似于在Dockerfile中编写如下指令:
1  | ENV HTTP_PROXY "http://192.168.2.133:7890"  | 
从上面配置可以看出,就相当于我们启动容器后,通过控制台链接到容器,然后修改Linux内核的代理一样。
我们也可以在启动容器时通过添加参数的方式进行启动容器:
1  | --env HTTP_PROXY="http://192.168.2.133:7890"  | 
其他参数
- ftp_proxy:配置ftp访问的网络
 - no_proxy:不使用代理的网络链接,如 *.test.example.com,.example2.com