1.有时候,在公司内部为了提高分享的速度,需要在公司内部自己搭建一个本地的仓库,供私人使用。

2.docker官方提供了一个工具docker-registry,我们可以借助这个工具构建私有镜像仓库
a.首先,使用docker search命令查找

b.docker pull registry

通过docker images查看,可以看到registry镜像

c.运行registry:docker run -d -p 5000:5000 -v /root/docker/registry:/tmp/registry registry

默认情况下,仓库会创建在容器中的/tmp/registry目录下,通过 -v 指定将镜像文件存放在本地的目录中。
通过ps -ef|grep 5000可以发现5000端口已被监听

d.搭建好了私有仓库之后,就可以上传、下载、搜索镜像了。
查看本机ip:ifconfig ##获取ip为192.168.1.160

查看本地已有的镜像:docker images

将my/centos标记为 192.168.1.160:5000/centos;使用命令:docker tag 90a93df7436d 192.168.1.160:5000/centos

90a93df7436d为my/centos镜像ID;192.168.1.160:5000为本地私有仓库地址和端口

使用docker push上传标记的镜像到本地私有仓库:docker push 192.168.1.160:5000/centos

第一次执行"docker push 192.168.1.160:5000/centos"可能报如下异常:
The push refers to a repository [192.168.1.160:5000/centos]
Get https://192.168.1.160:5000/v1/_ping: http: server gave HTTP response to HTTPS client
解决方案:在/etc/docker目录下新建 daemon.json, 文件中写入:{ "insecure-registries":["192.168.1.160:5000"] }
然后重启docker:systemctl restart docker
重新运行registry:docker run -d -p 5000:5000 -v /root/docker/registry:/tmp/registry registry
再次运行"docker push 192.168.1.160:5000/centos"上传镜像到私有仓库。

接下来,我们可以到另一台机器192.168.1.60下载160上传的192.168.1.160:5000/centos镜像:docker pull 192.168.1.160:5000/centos

查看Registry中所有镜像信息
$ curl http://192.168.1.160:5000/v2/_catalog
{"repositories":["aa","mysql"]}
下载镜像
$ docker pull 192.168.1.160:/aa
$ docker pull 192.168.1.160:/mysql

创建Docker私有仓库的更多相关文章

  1. nexus3使用docker运行/创建docker私有仓库/maven私有仓库

    version: '3.2' services: nexus3: container_name: nexus3 hostname: nexus3 image: sonatype/nexus3:3.14 ...

  2. 使用自签名的方式创建Docker私有仓库

    Docker推荐使用CA机构颁发的TLS(Transport Layer Security Protocol)证书来保护docker仓库的安全,但是我们也可以选择使用HTTP或者自签名证书的方式实现本 ...

  3. docker 私有仓库 harbor docker-compose

    c创建docker私有仓库 docker pull registry:2.1.1 mkdir /opt/registry#mkdir /var/lib/registry docker run -d - ...

  4. 创建docker私人仓库

    关于创建docker私人仓库 1.1.           安装步骤 1.1.1.            直接从公共库上面下载register镜像在本地执行 1.1.1.1.             ...

  5. 搭建docker私有仓库,建立k8s集群

    服务器IP角色分布 192.168.5.2 etcd server 192.168.5.2 kubernetes master 192.168.5.3 kubernetes node 192.168. ...

  6. docker 私有仓库镜像的存储位置

    docker 私有仓库的镜像 是存储在5739360d1030 registry "docker-registry" 3 days ago Up 28 hours 0.0.0.0: ...

  7. Docker 私有仓库建立(加密和用户验证)

    (一)生成证书1.mkdir /certs2.cd /certs 3.生成自签名证书 sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days ...

  8. 搭建docker私有仓库(https)

    1.修改openssl.cnf,支持IP地址方式,HTTPS访问在Redhat7或者Centos系统中,文件所在位置是/etc/pki/tls/openssl.cnf.在其中的[ v3_ca]部分,添 ...

  9. docker 私有仓库简易搭建

    概要 本地私有仓库 局域网私有仓库 总结 概要 docker hub 使用非常方便,而且上面有大量的镜像可以使用. 但是,每次都远程下载镜像速度非常慢,如果能在本地做一个 docker 的仓库,多人协 ...

随机推荐

  1. cookie和session 以及Django中应用

    cookie和session 以及Django中应用   cookie和session机制 cookie和session机制 cookie机制采用的是在客户端保持状态的方案.作用就是为了解决HTTP协 ...

  2. Idea创建简单Java Web项目并部署Servlet

    1.打开Idea,创建JAVA Web项目 在WEB-INF目录下创建classes和lib文件夹 配置编译输出路径为刚才新建的classes文件夹 配置依赖jar包加载路径 添加tomcat ser ...

  3. 嵌入Python | 调用Python模块中无参数的函数

    开发环境 Python版本:3.6.4 (32-bit) 编辑器:Visual Studio Code C++环境:Visual Studio 2013 需求说明 在用VS2013编写的Win32程序 ...

  4. rabbit初学之连接测试2

    com.rabbitmq.client.ShutdownSignalException: connection error 发现,port是5672,不是15672(15672是后台管理平台的端口)

  5. 5阶m序列

    void echo32(int m) { printf("%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d\n ...

  6. @Scheduler与cron

  7. const和static readonly 区别

    const的值是在编译期间确定的,因此只能在声明时通过常量表达式指定其值. 而static readonly是在运行时计算出其值的,所以还可以通过静态构造函数来赋值. static readonly ...

  8. jedis set 的四个重载方法(byte[]的四个自动忽略)

    方法定义如下: 1.String set(String key, String value) 2.String set(String key, String value, String nxxx) 3 ...

  9. python 更换 版本

    这是一个悲伤的安装ipython的过程. 写下来留个教训吧. 也是希望对博友一些帮助吧. 注: 我也写了一篇window下安装bpython的文章(个人感觉bpython要比ipython强大的多), ...

  10. selenium之生成html测试报告--testng.xsl

    自制版制作步骤: 1.首先下载一个文件名为testng.xslt-1.1.zip testng.xslt-1.1我在印象笔记里面备份了一份 打开testng.xslt中lib文件夹,找到saxon-8 ...