Mac代理环境下配置docker及docker个人仓库

docker代理配置和搭建docker个人仓库(mac)

使用的docker-desktop版本:2.2.0.4

使用的docker个人仓库是用ubuntu搭建的

问题1:代理下push/pull不了外网(setting里配置一下代理)
在setting里设置代理
问题2:搭建个人仓库后,向仓库push,pull失败

pull/push 失败的原因可能有两个,一个是因为没有设置insecure-registries,另一个是因为代理的原因。

原因一:代理设置错误

首先要弄清两个IP地址,一个是你的主机(假设192.168.0.1),一个是仓库的地址(假设192.168.0.2)。

然后你要知道,在代理的情况下你push和pull都会使用你的代理。

而你的私人仓库是架在本地的,如果公司网络有限制,可能会导致你的代理不能连接你的主机。

所以你在push/pull 仓库的镜像时,需要取消代理,让docker直接通过内网进行访问。

解决方法就是将no-proxy部分补上

比如你的服务器是192.168.0.2,你就添加一个192.168.0.2
在这里插入图片描述
原因二:没有设置insecure-registries

没有设置insecure-registries会导致连接服务器仓库被拒

解决方法是在setting里补上
在这里插入图片描述
如果你要pull的的仓库是192.168.0.2,就写上192.168.0.2:5000(5000是你run个人仓库写的端口地址)。需要注意的是,如果有多个地址不能有额外的“,”号。

mac通过vim修改配置地址:

/Users/username/.docker/daemon.json
# (username是你电脑用户名)

mac 查看代理配置地址是:

/etc/systemd/system/docker.service.d/
# 该目录下有两个代理配置文件 http-proxy.conf 和 https-proxy.conf

问题3:
本地搭建个人仓库后,向本地push/pull 失败

原因有两个,同样是insecure-registries没有设置,和代理(no-proxy)没有配置好。

解决方法是将电脑的地址填到insecure-registries和no-proxy中。

这次搭建我使用的服务器是ubuntu,顺便把ubuntu的代理配置贴一下出来。

ubuntu docker 代理配置

代理文件位置

# Ubuntu daemon.json的位置
/etc/docker/daemon.json
# 代理文件位置
/etc/systemd/system/docker.service.d/
# 该目录下有http-proxy.conf 和 https-proxy.conf两个文件,如果没有就vim一个
# http-proxy.conf 配置
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/"
# https-proxy.conf 配置
[Service]
Environment="HTTPS_PROXY=https://proxy.example.com:443/"

这样配置后代理会生效,但是可能会导致本地push/pull失败

同样是上面的两个文件加上no-proxy配置

[Service]    
Environment="HTTP_PROXY=http://proxy.example.com:80/" "NO_PROXY=localhost,127.0.0.1"
# 如果你需要向你的服务器(192.168.0.2) push镜像
[Service] 
Environment="HTTP_PROXY=http://proxy.example.com:80/" "NO_PROXY=localhost,127.0.0.1, 192.168.0.2"

关于daemon.json文件

这个文件除了配置安全访问地址外,还可以配置镜像地址(加速镜像下载速度)

  1 {
  2     "registry-mirrors":[
  3         "http://registry.docker-cn.com",
  4         "http://hub-mirror.c.163.com",
  5         "http://docker.mirrors.ustc.edu.cn"
  6     ],
  7     "insecure-registries":["192.168.0.2:5000","127.0.0.1"]
  8 }

暂且先把遇到的想到的都贴在这里了。以后有新的问题再补充。

官方参考地址:https://docs.docker.com/config/daemon/systemd/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值