• 访问docker仓库


    仓库(Repositiry)是集中存放镜像的地方,分为公共仓库和私有仓库。一个容易与之混淆的概念是注册服务器(Registry)。实际上注册服务器是存放仓库的具体服务器,一个注册服务器上可以有多个仓库,而每个仓库下面可以有多个镜像。因此可以将仓库看做一个具体的项目或目录。例如对于仓库地址:private-docker.com/ubuntu来说,private-docker.com是注册服务器地址,ubuntu是仓库名。

    1、Docker Hub公共镜像市场

    目前Docker官方维护了一个公共镜像仓库http://hub.docker.com,大部分镜像都可以通过该网站进行下载。

    (1)、登录

    可以通过执行命令docker login命令来输入用户名、密码和邮箱来完成注册和登录。注册成功后,本地用户目录的.dockercfg中将保存用户的认证信息。登录成功的用户可以上传个人制作的镜像。

    (2)、基本操作

    用户无需登录即可通过docker search命令来查找官方仓库中的镜像,并利用docker pull命令来将它下载到本地。

    2、时速云镜像市场(略)

    3、搭建本地私有仓库

    (1)、安装docker后,可以通过官网提供的registry镜像来简单搭建一套本地私有仓库环境:

    docker run -d -p 5000:5000 registry

    这将自动下载并启动一个register容器,创建本地的私有仓库。默认情况下,会将仓库创建在容器的/tmp/registry目录下。可以通过-v参数来将镜像文件放在本地的指定路径。例如下面的例子将上传的镜像放到/opt/data/register目录:

    docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry

    此时,在本地将创建一个私有仓库服务,监听端口为5000。

    (2)、管理私有仓库

    搭建好仓库之后,查看其地址为:172.16.0.79(docker宿主机的ip):5000。然后在虚拟机系统里测试上传和下载的镜像。

    查看已有镜像:

    使用docker tag 命令将镜像ubuntu:1.0标记为172.16.0.79:5000/test

    使用docker push上传镜像

    报错:

    The push refers to a repository [172.16.0.79:5000/test]
    Get https://172.16.0.79:5000/v1/_ping: http: server gave HTTP response to HTTPS client

    解决:在/etc/docker/路径下添加文件daemon.json

    echo '{ "insecure-registries":["172.16.0.79:5000"] }' > /etc/docker/daemon.json

    然后:systemctl restart docker

    再次上传:

    报错:(可能是容器registry没有启动)

    The push refers to a repository [172.16.0.79:5000/test]
    Put http://172.16.0.79:5000/v1/repositories/test/: dial tcp 172.16.0.79:5000: getsockopt: connection refused

    解决:docker start be0d898caf02

    再次上传:

     查看仓库中的镜像:

    curl -XGET http://172.16.0.79:5000/v2/_catalog
    或者
    curl -XGET http://172.16.0.79:5000/v2/test/tags/list

    从私有仓库下载镜像:

    docker pull 172.16.0.79:5000/test

  • 相关阅读:
    [hdu3853]LOOPS(概率dp)
    [poj2096]Collecting Bugs(概率dp)
    lintcode-42-最大子数组 II
    lintcode-39-恢复旋转排序数组
    lintcode-36-翻转链表 II
    lintcode-34-N皇后问题 II
    lintcode-33-N皇后问题
    lintcode-32-最小子串覆盖
    lintcode-31-数组划分
    lintcode-30-插入区间
  • 原文地址:https://www.cnblogs.com/cq-yangzhou/p/10384974.html
Copyright © 2020-2023  润新知