daemon.json配置
- 服务器上位置:/etc/docker/daemon.json (没有请新建一个)
{ "registry-mirrors": [ "https://mirror.ccs.tencentyun.com" ], "insecure-registries": [ "http://harbor.demo.tool90.com:803" ] }
- 然后进行docker的重启
systemctl restart docker.service
上传镜像到harbor
- # 标记 格式:docker tag [镜像id] [harbor具体的地址:80]/[public项目名称]/[自定义镜像名称:版本号]
docker tag fa68e291a0e4 harbor.demo.tool90.com:803/tkw_demo_webapi/my_tkw_demo_webapi:1.0
-
#登录 harbor
docker login harbor.demo.tool90.com:803 -u admin -p Harbor12345
-
#推送
docker push harbor.demo.tool90.com:803/tkw_demo_webapi/my_tkw_demo_webapi:1.0
常见问题
- 如没有配置 harbor 域名到 daemon.json 可能产生的错误
(未开放端口也能产生如下错误)Error response from daemon: Get "https://harbor.demo.tool90.com:803/v2/": http: server gave HTTP response to HTTPS client
Error response from daemon: Get http://harbor.demo.tool90.com:803/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
重点:如果是云服务器,请安全组放行端口,一定要开发端口,开放端口,开放端口
- 密码明文警告
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
#解决方案 docker login harbor.demo.tool90.com:803 --username admin --password-stdin < /tkw/harbor_password.txt