docker hub

 

1. 使用 docker hub 服务器

注册dockerhub帐号
sudo docker login  填写用户名和密码
sudo docker tag <imageID> ddddfang/ubuntu:tag   ddddfang是账户的名字,所以在push之前需要将image名字改成<账户名/xxx:tag>这种形式
(sudo docker rmi -f imagename:tag    删除某个tag,此时不可以使用imagesid,因为多个tag对应的imagesid是相同的)
sudo docker push

2. 使用私有hub

参考这里 还有 这里

  • 作为服务器的主机( 假定 ip 为 10.28.35.173 ):

    • sudo docker pull registry 拉取 registry
    • sudo docker run --name docker-registry -d -p 5000:5000 registry
      这种情况下其他主机push的images将存储在这个contrainer的 /var/lib/registry/目录下,若container被删除,则push的images也被删除,具体可以使用
      sudo docker exec -ti 5566c310cf39 sh 查看,因此经常用下面这个命令:
    • sudo docker run -d -p 5000:5000 -v /home/fang/docker/registry:/var/lib/registry -v /data/config.yml:/etc/docker/registry/config.yml registry (更常用的命令)
      container中关于docker的配置文件在 /etc/docker/registry/config.yml , 修改 config.yml ,storge字段下添加

      img

      这样以后其他主机就可以用 curl -I -X DELETE http://10.28.35.173:5000/v2/ddddfang/ubuntu/manifests/sha256:acbb1038a3 删除images了
      (ddddfang/ubuntu是使用curl -X 返回的仓库名, acbb1038a3是仓库的sha256值)

    • curl -X GET http://127.0.0.1:5000/v2/_catalog 返回一个json表示已经存在的repos
  • 在其他主机上:

    * `sudo vim /etc/default/docker`
        添加一行  DOCKER_OPTS="--insecure-registry 10.28.35.173:5000"
    * `sudo vim /lib/systemd/system/docker.service`
        + 添加 "EnvironmentFile=-/etc/default/docker",
        + 将 "ExecStart=/usr/bin/dockerd -H fd://" 改为 "ExecStart=/usr/bin/dockerd -H fd:// $DOCKER_OPTS"
    * `systemctl daemon-reload`(没有这个命令的貌似只能重启机器了??)
    * `service docker restart`
    * 然后进行push操作
        + `sudo docker tag <imageid> 10.28.35.173:5000/ubuntu:1604`     # tagged image ==>  (10.28.35.173:5000/ubuntu:1604)
        + `sudo docker push 10.28.35.173:5000/ubuntu:1604`
    * `curl -X GET http://10.28.35.173:5000/v2/_catalog`   返回一个json表示已经存在的repos
    
  • 其他主机上下载:

    * `sudo docker pull 10.28.35.78:5000/ubuntu:1604`
### Docker Hub 使用指南 #### 登录 Docker Hub 全新的 Docker 安装默认与 Docker Hub 进行公共交互。为了访问个人内容并享受较低的 Docker API 速率限制,用户需要登录 Docker Hub 或者私有注册表[^1]。 ```bash docker login ``` 执行上述命令后,终端会提示输入用户名和密码。成功验证身份之后,可以顺利推送或拉取私有镜像以及利用其他高级功能。 #### 浏览与搜索镜像 Docker Hub 提供了一个网页界面用于浏览不同类型的容器镜像。对于希望快速找到所需资源而不必编写复杂查询语句的新手来说非常方便。页面顶部设有搜索栏,支持按名称查找特定软件包;左侧菜单则列出了多个分类选项以便进一步筛选目标对象。 官方推荐使用带有 "Docker Official Images" 标签的镜像作为首选项,因为这些是由 Docker Inc. 维护和支持的企业级质量保证版本[^4]。 #### 下载(Pull)镜像 当确定好要使用的镜像后,可以通过 `docker pull` 命令将其下载到本地环境中。例如: ```bash sudo docker pull ubuntu:12.04 ``` 这条指令实际上是从地址为 `http://registry.hub.docker.com/` 的 Ubuntu 仓库中提取标记为 `12.04` 版本的 Linux 发行版映像文件[^3]。 #### 推送(Push)自定义镜像至 Docker Hub 创建并测试完成自己的应用镜像之后,还可以考虑分享给更多开发者群体。这一步骤涉及先打标签再上传两步操作: - **Tagging**: 将本地镜像关联到远程仓库路径下; ```bash docker tag my_image username/repository:tagname ``` - **Pushing**: 把已打好标签的镜像推送到指定位置 ```bash docker push username/repository:tagname ``` 以上就是关于如何高效地运用 Docker Hub 平台的一些基本指导说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值