zoukankan      html  css  js  c++  java
  • Docker学习(三)-简单的私有DockerHub搭建

    Docker Hub

    目前Docker官方维护了一个公共仓库https://hub.docker.com, 其中已经包括100000+个的镜像。大部分需求都可以通过在 Docker hub中直接下载镜像来实现,

    注册登录

    可以在https://hub.docker.com 免费注册一个Docker账号。在命令行执行docker login输入用户名及密码来完成在命令行界面登记Docker Hub。你可以通过docker logout退出登录。

    docker login

    拉取镜像

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

    推送镜像

    用户也可以在登录后通过docker push命令来将自己的镜像推送到Docker Hub。

    docker pull tomcat

     docker images

    修改本地镜像的名字为账号名/镜像名

    上传镜像到公共仓库

    docker push woxpp/tomcat-test:latest

    登录界面查看

    docker pull woxpp/tomcat-test

    私有仓库

    有时候使用Docker Hub这样的公共仓库可能不方便,用户可以创建一个本地仓库供私人使用。比如,基于公司内部项目构建的镜像。
    docker-registry是官方提供的工具,可以用于构建私有的镜像仓库。

    安装运行docker-registry

    可以通过获取官方registry镜像来运行。默认情况下,仓库会被创建在容器的/var/lib/registry目录下。可以通过-v参数来将镜像文件存放在本地的指定路径。

    docker run --name registry -d  -p 5000:5000 --restart=always  -v /opt/registry:/var/lib/registry registry
    docker ps -a

    测试是否成功

    http://192.168.50.24:5000/v2/_catalog

    使用docker tag将session-web:latest这个镜像标记为192.168.50.24:5000/session-web:latest格式为docker tag IMAGE:TAG/]REPOSITORY[:TAG]

    docker tag docker.io/tomcat 192.168.50.24:5000/tomcat-2:latest
    

    使用docker push上传标记的镜像

    docker push 192.168.50.24:5000/tomcat-2:latest

    验证上传的镜像

    http://192.168.50.24:5000/v2/_catalog

     先删除已有镜像,再尝试从私有仓库中下载这个镜像。

    docker images
     docker rmi 192.168.50.24:5000/tomcat-2
    docker pull 192.168.50.24:5000/tomcat-2 

    注意事项

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

    可以用下面方式解决

    修改客户端/etc/docker/daemon.json中写入如下内容

    {
        "registry-mirror":[
            "http://hub-mirror.c.163.com"
        ],
        "insecure-registries":[
            "192.168.50.24:5000"
        ]
    }

    重新启动docker后再试试
    service docker restart
     
  • 相关阅读:
    猫与老鼠的故事(委托)
    返回类型协变和参数类型逆变
    HTTP 方法:GET 对比 POST
    Ajax
    django(未解决的问题)
    mysql开机启动
    apache的不同路径conf/httpd.conf有什么区别【转载】
    Apache部署Django过程中遇到的一些问题
    执行django-admin.py startproject XXX报错的问题
    yum安装软件的过程中出现的一些问题
  • 原文地址:https://www.cnblogs.com/woxpp/p/11871886.html
Copyright © 2011-2022 走看看