在Rancher2中部署Docker-Registry仓库服务

1.docker登陆认证

[root@master ~]# vim /etc/docker/daemon.json
{
 "insecure-registries": ["10.0.1.99:5000"]
}

进行登录认证才能进行后续的操作,私有镜像仓库登录认证的语法和格式:docker login <nexus-hostname>:<repository-port>

[root@master ~]# docker login 10.0.1.99:5000
Username(admin): admin
Password:
login Succeeded
[root@master ~]# 

登录时,需要提供用户名和密码。认证的信息会被保存在~/.docker/config.json文件,在后续与私有镜像仓库交互时就可以被重用,而不需要每次都进行登录认证。

复制代码
[root@master ~]# cat ./.docker/config.json 
{
    "auths": {
        "10.0.1.99:5000": {
            "auth": "YWRtaW46aGFpcGFpMTIzQA=="
        },
        "134.205.136.89:5000": {
            "auth": "YWRtaW46aGFpcGFpMTIzQA=="
        }
    },
    "HttpHeaders": {
        "User-Agent": "Docker-Client/18.09.6 (linux)"
    }
}
复制代码

2.Kubernetes从私有镜像拉取镜像

在使用私有镜像拉取镜像时,需要为私有镜像仓库创建一个镜像仓库的密钥,并在创建容器中进行引用。创建镜像仓库的语法和格式:kubectl create secret docker–registry <regsecret-name> —docker–server=<your–registry–server> —docker–username=<your–name> —docker–password=<your–pword> —docker–email=<your–email>。

<regsecret-name>:所创建的私有镜像仓库密钥的名称;
<your-registry-server>:为镜像仓库的服务器地址;
<your-name>:登录镜像仓库的用户名;
<your-pword>:登录镜像仓库的密码;
<your-email>:用户的邮箱地址。

注意secret的名称空间,在哪个名称空间部署应用就把secret建在哪个名称空间下

复制代码
//--docker-server=10.0.1.99:5000 值不要加http://        
[root@master ~]# kubectl create secret docker-registry mysecret --docker-server=10.0.1.99:5000 --docker-username=admin --docker-password=123456 --docker-email=yiyo@126.com -n test

创建deployment

===================================

=========================

posted @ 2019-06-22 22:07  linyouyi  阅读(3684)  评论(0编辑  收藏  举报