• docker-私有仓库-身份验证


    服务端

    拉取registry镜像

    docker pull registry

    启动registry容器

    docker run -d -p 5000:5000 
    --restart always 
    --name registry 
    -e "REGISTRY_AUTH=htpasswd" 
    -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" 
    -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd 
    registry
    

    使用htpasswd创建密码文件

    registry镜像的最新版没有包含htpasswd,所以我们可以在宿主机上创建密码文件,再复制到registry容器中

    宿主机上安装htpasswd(包含在httpd-tools中)

    yum install httpd-tools

    创建密码文件

    htpasswd -Bbn <用户名> <密码> >htpasswd

    复制到registry容器

    docker cp htpasswd registry:/auth/

    客户端

    浏览器查看仓储

    访问 http://<服务器地址>:5000/v2/_catalog ,要求身份验证:

    验证通过后页面:

    docker操作

    添加insecure-registries配置

    修改daemon.json,在insecure-registries数组中添加服务器地址(因为没有配置证书),再重启docker

    {
      "insecure-registries": [
        "<服务器地址>:5000"
      ]
    }
    

    登录私有仓库

    docker login -u <用户名> -p <密码> http://<服务器地址>:5000/

    推送镜像到私有仓库

    以busybox为例
    下载busybox的镜像
    docker pull busybox
    打上自定义标签
    docker tag busybox <服务器地址>:5000/busybox:test
    推送镜像
    docker push <服务器地址>:5000/busybox:test
    查看仓储,已经包含上传的镜像

    删除本地镜像
    docker rmi <服务器地址>:5000/busybox:test
    从私有仓库拉取镜像
    docker pull <服务器地址>:5000/busybox:test

  • 相关阅读:
    scnner02 (nextLine)
    Scanner01
    Spring 框架 (初学)
    查询自己写了多少行代码
    jdbc事务
    jdbc(预编译插入数据)
    jdbc(java连接数据库)
    监听器扩展
    listener(监听器)
    Filter过滤器
  • 原文地址:https://www.cnblogs.com/LaughAtSelfsWrong/p/14172525.html
Copyright © 2020-2023  润新知