docker如何离线拉取镜像?

通过代理把一台能上网的服务器代理给一台不能上网的服务器,通过配置,原本不能上网的服务器就能成功上网了~

1.进入虚拟机

2.进入到/etc/systemd/system目录下

3.进入docker.service.d

4.编辑http-proxy.conf

vi  http-proxy.conf

 

5.根据个人情况把IP进行修改,修改后放进http-proxy.conf中

[Service] Environment="HTTP_PROXY=http://10.15.136.20:8080" Environment="HTTPS_PROXY=http://10.15.136.20:8080" Environment="NO_PROXY=10.28.149.171,10.28.148.61,localhost,127.0.0.1,.example.com

 

 释意如下:

这段代码是用于在 Linux 系统的 systemd 服务配置文件中设置环境变量的部分。系统的服务在启动时会继承这些环境变量,并在它们自己的环境中使用。这样可以在整个系统范围内的服务中保持一致的行为,而不必在每个单独的服务启动脚本中重复相同的配置。 以下是每一部分的解释:

1. Environment="HTTP_PROXY=[http://10.15.136.20:8080]" 这一行设置了一个环境变量 `HTTP_PROXY`,它的值是一个 HTTP 代理服务器地址 `http://10.15.136.20:8080`。当这个服务运行时,所有通过网络发送的 HTTP 请求都将首先经过这个代理服务器。

2. Environment="HTTPS_PROXY=[http://10.15.136.20:8080]" 类似于上面的 `HTTP_PROXY` 设置,这一行设置了 `HTTPS_PROXY` 环境变量,同样指向 `http://10.15.136.20:8080`。这意味着所有的 HTTPS 请求也将被重定向到此代理服务器。

3. Environment="NO_PROXY=[10.28.149.171], [10.28.148.61], localhost, [127.0.0.1], .,[example.com]" 这一行设置了一个 `NO_PROXY` 环境变量,列出了一些不需要通过代理的主机或域名列表。具体如下: - `[10.28.149.171]` 和 `[10.28.148.61]` 表示 IP 地址,表示这些机器上的通信无需代理。 - `localhost` 和 `[127.0.0.1]` 指本地回环地址,表示本地主机上的通信无需代理。 - `.` 指默认域,表示任何子域名也不需代理。 - `[example.com]` 表示名为 `example.com` 的域名及其所有子域也不需要通过代理。 因此,当这个服务运行时,对于不在 `NO_PROXY` 列表中的所有其他 URL,所有的 HTTP 和 HTTPS 请求都会通过预先指定的代理服务器 `http://10.15.136.20:8080` 发送,而对于列表中的 URL,则直接连接而不使用代理。这种设置常用于在企业网络中实现内网穿透、负载均衡或防火墙策略。

6.重新加载配置文件

systemctl deamon-reload 

7.重启docker

systemctl  restart  docker 

8. 确保docker状态开启

9.这时候就可以拉镜像了

docker pull 镜像名

 10.查看我们拉取的镜像,已存在~

 

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值