赞
踩
需要先在能访问外网的机器搭建一个代理,后面 harbor 用这个代理去外网拉取镜像,这里用docker 直接部署,
- docker run --name squid -d --restart=always \
- --publish 3128:3128 \
- --volume /srv/docker/squid/cache:/var/spool/squid \
- sameersbn/squid:3.5.27-2
这里的 harbor 是按照官方文档 docker compose 部署的仓库https://goharbor.io/docs/2.11.0/install-config/
使用前可以先测试一下,有返回证明代理没问题
curl --proxy http://xx.xx.xx.xx:3128 docker.com
编辑 harbor.yaml 配置文件,找到 proxy
- proxy:
- http_proxy: http://xx.xx.xx.xx:3128 #上面搭建代理服务机器的ip和端口
- https_proxy: http://xx.xx.xx.xx:3128
- no_proxy: localhost,core.harbor.domain,127.0.0.1
- components: #需要使用代理的组件
- - core
- - jobservice
- - trivy
然后重新读取配置并重启
- docker-compose down -v
- vim harbor.yml
- ./prepare
- docker-compose up -d
登录 harbor 网页,添加代理仓库
1、提供者:选择代理仓库类型 2、目标名:给仓库命名 3、描述:随便写 4、目标URL:填入需要代理的仓库。这里填 dockerhub 5、访问ID、访问密码:需要被代理仓库的账号密码,也就是dockerhub 的账户密码,可以不填
点击测试连接即可测试,没有问题点击确定。
这里的项目名称我们后面拉取镜像的时候会用到,选择镜像代理以及刚刚创建的代理仓库。
docker 从私有仓库拉取镜像,需要先信任私有仓库。
harbor.wenbo:内网harbor的域名,你们也可以用ip
dockerhub:刚刚创建的代理项目的名称
library:busybox 在dockerhub上所在的项目,不同镜像所在的项目并不同,需要自己确认
busybox:镜像名称
latest:镜像版本
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。