【云星数据---mesos实战系列002】:mesos全分布式部署实战005--docker-register部署准备

本文详细介绍如何搭建和测试Docker私有仓库,包括安装Docker、下载registry镜像、配置私有仓库、测试仓库可用性及常见错误解决。

一、docker私有仓库部署原因

我们要有一个统一的地方来完成对docker镜像的管理。docker社区提供的docker-register是一个不错的工具。现在我们先尽快的将
环境建设起来,如果考虑后续的企业级应用可以考虑使用habor进行替换。敬请关注后续关于habor的文章

二、搭建docker私有仓库

    1.安装并启动docker
        yum -y install docker.io

    2.下载registry镜像
        docker pull registry

    3.服务端使用http协议
        vim /etc/sysconfig/docker
        添加内容如下:
        other_args="--selinux-enabled --insecure-registry 10.100.134.2:5000"

    4.docker常用命令
        service docker restart
        service docker start

    5.启动registry镜像
        docker run -d -p 5000:5000  --restart=always  -v /opt/registry:/tmp/registry  registry

        参数说明:
        -v /opt/registry:/tmp/registry :默认情况下,会将仓库存放于容器内的/tmp/registry目录下,指定本地目录挂载到容器
        此容器要用 docker stop 进行停止
    6.测试仓库运行地址
        浏览地址: http://10.100.134.2:5000/v2/_catalog
        效果示例: {"repositories":[]}

三、测试私有仓库

   1.本地使用http
        在mac中通过docker-tools来设置如下参数
        {
            "insecure-registries": [
                "10.100.134.2:5000"
            ]
        }
    2.本地下载
        docker pull busybox

    3.本地tag
        docker tag busybox 10.100.134.2:5000/busybox

    4.本地查看image
        docker images

    5.上传到私有仓库
        docker push 10.100.134.2:5000/busybox

    6.验证上传成功
        浏览地址: http://10.100.134.2:5000/v2/_catalog
        效果样例: {"repositories":["busybox"]}

四、测试私有仓库是否可用

测试私有仓库是否可用
    docker pull hello-world
    docker tag hello-world 10.100.134.3:5000/hello-world
    docker push 10.100.134.3:5000/hello-world

五、可能出现的错误

    1.错误提示
        http: server gave HTTP response to HTTPS client
    2.错误原因
        docker repository默认使用https协议进行通信,一般情况下我们用http协议可以满足要求。
        所以只要在server和client任何一方导致的协议不一致都会出现类似的问题。
    3.解决方法
        server端使用http协议
        client端使用http协议

    4.解决方法如下:
            1.修改配置文件
                vim /etc/docker/daemon.json
                填写如下内容
                {
                    "registry-mirrors": ["http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn","10.100.134.3:5000","10.100.134.2:5000"],
                    "insecure-registries":["10.100.134.3:5000","10.100.134.2:5000"]
                }
            2.分发配置文件
                scp /etc/docker/daemon.json  bigdata03:/etc/docker/daemon.json
                scp /etc/docker/daemon.json  bigdata05:/etc/docker/daemon.json
            3.重启docker服务
                systemctl restart docker
            4.测试是否成功
                测试命令:
                curl http://10.100.134.3:5000/v2/_catalog
                curl http://10.100.134.3:5000/v2/registry/tags/list
                返回结果:
                {"repositories":["hello-world"]}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值