搭建私有仓库Registry(Docker Hub)

  1. 安装Docker

  2. 拉取仓库镜像:# docker pull registry

  3. 生成认证certificate

    mkdir ~/certs
    openssl req -newkey rsa:4096 -nodes -sha256 -keyout /root/certs/domain.key -x509 -days 365 -out /root/certs/domain.crt
    # 期间输入域名:internal.dockerhub.io
  4. 复制认证到docker:

    mkdir /etc/docker/certs.d/internal.dockerhub.io
    cp /root/certs/domain.crt /etc/docker/certs.d/internal.dockerhub.io/domain.crt
  5. 启动仓库镜像

    docker run -d --restart=always --name registry \
    -v /root/docker/registry:/var/lib/registry \
    -v /root/certs:/root/certs \
    -v /root/auth:/root/auth \
    -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \
    -e REGISTRY_HTTP_TLS_CERTIFICATE=/root/certs/domain.crt \
    -e REGISTRY_HTTP_TLS_KEY=/root/certs/domain.key \
    -p 443:443 registry
  6. 修改主机映射

    vi /etc/hosts
    192.168.184.166 mydockerhub.com
  7. 创建一个镜像

    docker pull hello-world
    docker tag hello-world internal.dockerhub.io/hello-world
    docker push internal.dockerhub.io/hello-world
    docker rmi internal.dockerhub.io/hello-world
    docker pull internal.dockerhub.io/hello-world
  8. 使用Rest API查看

    curl -k --tlsv1 https://internal.dockerhub.io/v2/_catalog
    curl -k --tlsv1 -X GET https://internal.dockerhub.io/v2/hello-world/tags/list
  9. 添加http basic authentication

    htpasswd -Bbn testuser testpassword > /root/auth/htpasswd
  10. 重启

    docker run -d --restart=always --name registry \
    -v /root/docker/registry:/var/lib/registry \
    -v /root/certs:/root/certs \
    -v /root/auth:/root/auth \
    -e "REGISTRY_AUTH=htpasswd" \
    -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
    -e "REGISTRY_AUTH_HTPASSWD_PATH=/root/auth/htpasswd" \
    -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \
    -e REGISTRY_HTTP_TLS_CERTIFICATE=/root/certs/domain.crt \
    -e REGISTRY_HTTP_TLS_KEY=/root/certs/domain.key \
    -p 443:443 registry
  11. 登录仓库

    docker login internal.dockerhub.io
    username:testuser
    password:testpassword
  12. 保存镜像

    docker save -o registry.tar registry
    docker save -o hello-world.tar hello-world

搭建私有仓库Registry(Docker Hub)的更多相关文章

  1. Ubuntu Docker Registry 搭建私有仓库

    服务器版本 Ubuntu 16.04 LTS. 安装命令: $ docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --rest ...

  2. Docker容器学习梳理 - 私有仓库Registry使用

    但有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似.使用私有仓库有许多优点: 1)节省网络带宽,针对 ...

  3. Docker搭建私有仓库

    1,下载仓库镜像. docker pull  registry    //主要用于搭建私有仓库的. 2,将宿主机端口映射到容器中去,容器的5000端口是不能更改的. docker run -d -p ...

  4. Docker入门之四搭建私有仓库

    前面学习了下镜像和容器,今天来学习下仓库,来搭建本地私有仓库.当然可以使用远程的共有的仓库,但在企业中有的还是放在本地,所以需要搭建私有仓库. 一.搭建仓库 可以在容器中run一个仓库镜像. dock ...

  5. 转载:教你分分钟搞定Docker私有仓库Registry

    一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候我们的服务器无法 ...

  6. 教你分分钟搞定Docker私有仓库Registry

    一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候我们的服务器无法 ...

  7. Docker 搭建私有仓库

    Docker 搭建私有仓库 环境: docker 版本 :18.09.1 主机地址:192.168.1.79 1.运行并创建私有仓库 docker run -d \ -v /opt/registry: ...

  8. 菜鸟系列docker——搭建私有仓库harbor(6)

    docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...

  9. [Docker]docker搭建私有仓库(ssl、身份认证)

    docker搭建私有仓库(ssl.身份认证) 环境:CentOS 7.Docker 1.13.1 CentOS 7相关: https://www.cnblogs.com/ttkl/p/11041124 ...

  10. (转)教你分分钟搞定Docker私有仓库Registry

    转:https://www.cnblogs.com/Javame/p/7389093.html 一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方 ...

随机推荐

  1. 如何使用photoshop修改图片的像素大小(分辨率)

    查看原始图片的分辨率如下:640*399

  2. Kubernetes 内存资源限制实战

    本文转载自米开朗基扬的博客 1. Kubernetes 内存资源限制实战 Kubernetes 对内存资源的限制实际上是通过 cgroup 来控制的,cgroup 是容器的一组用来控制内核如何运行进程 ...

  3. 每天学五分钟 Liunx 0100 | 服务篇:进程状态

    多任务和 CPU 时间片 前面说了 Liunx 是多用户多任务的,所谓的多任务就是多个进程"同时"执行.比如,同时开多个软件(进程),对于用户来说好像每个软件(进程)都在工作,但是 ...

  4. 线性代数 · 矩阵 · Matlab | Moore-Penrose 伪逆矩阵代码实现

    背景 - Moore-Penrose 伪逆矩阵: 对任意矩阵 \(A\in\mathbb C^{m\times n}\) ,其 Moore-Penrose 逆矩阵 \(A^+\in\mathbb C^ ...

  5. Gradle 出现 Could not resolve gradle

    Gradle 在进行 sync 的时候会出现 Caused by: org.gradle.internal.resolve.ModuleVersionResolveException: Could n ...

  6. docker容器中执行GPU环境中的tensorflow和pytorch任务

    1. 背景 (1) 业务方提供了一台有GPU的服务器,且已经安装了显卡等组件,cuda版本10.2,具体信息如下 (2) 在裸机上部署anaconda.pytorch.tensorflow较为麻烦,因 ...

  7. 【css】 text-align 居中导航

    原理 :利用 inline-block 将 导航 作为 文本 , 被外层具有 text-align 属性的导航盒子包含 .从而实现居中效果 1.  html 结构 <header> < ...

  8. MyBatis05——一对多和多对一处理

    多对一处理 1.数据库表的设计 CREATE TABLE `teacher` ( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAULT NULL, PRI ...

  9. [转帖].NET Framework 中的传输层安全性 (TLS) 最佳做法

    https://learn.microsoft.com/zh-cn/dotnet/framework/network-programming/tls 传输层安全性 (TLS) 协议是一个行业标准,旨在 ...

  10. [转帖]Linux系统管理-crond、chkconfig、systemd、unit、target

    https://cloud.tencent.com/developer/article/1409845 10.23 linux任务计划cron crontab命令被用来提交和管理用户的需要周期性执行的 ...