保存镜像的地方成为仓库(registry)。目前有2种仓库:公共仓库和私有仓库。

最方便的是使用公共仓库上传和下载镜像,下载不需要注册,上传需要到公共仓库注册。公共仓库网站:https://hub.docker.com

怎么新建和使用公共仓库,请百度。这里关注私有仓库的搭建。

那么怎么构建属于自己的私有仓库呢?

可以使用registry镜像来搭建本地的私有仓库。

具体步骤如下:

我想在A机器上搭建docker私有仓库。

1、在A机器上安装docker服务

百度查。

2、在A机器上下载registry镜像

docker pull registry

  

3、指明私有仓库的访问地址和方式为http

为了避免报错

vim /etc/docker/daemon.json

写入:
{"insecure-registries":["10.1.2.3:5000"]}

10.1.2.3  是A的ip地址。  

4、重启docker

systemctl restart docker

  

5、新建私有仓库的容器

验证一个可用端口(未被占用的端口)

netstat  -lnp |grep  :5000

  

用registry镜像,启动一个仓库容器,默认情况下仓库存放于容器内的/tmp/registry目录下,使用-v 选项可以将本地目录挂载到容器内的/tmp/registry下使用,这样就不怕容器被删除后,镜像也随之丢失。

在本地搭建一个私有仓库服务,监听5000端口

docker run  -d -p 5000:5000 -v /data/registry:/tmp/registry registry

  

验证一下私有仓库是否存在了

http://10.1.2.3:5000/v2

6、上传镜像到私有仓库

使用docker tag 命令将要上传的镜像标记为10.1.2.3:5000/redis

docker tag redis 10.1.2.3:5000/redis

  

用docker push 上传标记好的镜像

docker push 10.1.2.3:5000/redis

  

查看私有仓库的目录,访问

10.1.2.3:5000/v2/_catalog

7、验证私有仓库

现在我们可以先将我们本地的10.1.2.3:5000/redis和redis先删除掉,

docker rmi redis
docker rmi 10.1.2.3:5000/redis

  

然后使用docker pull从我们的私有仓库中获取redis镜像,

docker pull 10.1.2.3:5000/redis
docker images

  

参考:https://www.cnblogs.com/lienhua34/p/4922130.html

搭建docker私有仓库的更多相关文章

  1. 一步步搭建docker私有仓库并从私有仓库中下载镜像

    一步步搭建docker私有仓库 #下载镜像 docker pull registry#查看镜像 docker images #运行私有仓库,指定端口和数据卷 docker run -d -p : -v ...

  2. windows 环境下搭建docker私有仓库

    windows 环境下搭建docker私有仓库 1.在公用仓库中pull仓库镜像 docker pull regitry 2.启动仓库镜像 //-d意思是后台运行,-p是做端口映射,这里是将本地的50 ...

  3. Docker自学纪实(六)搭建docker私有仓库

    docker的镜像仓库分两种:一种是从官方公有仓库拉取:还有就是自己搭建私有仓库.官方的镜像仓库是面对整个应用市场的:私有仓库一般用于公司内部,就是公司项目自身所需的镜像.搭建私有仓库有什么好处?私有 ...

  4. 03搭建docker私有仓库

    搭建docker私仓,可以使用docker官方提供的registry镜像.该镜像目前有2.0,2.3和2.3.1版本.它只与1.6.0以上版本的docker兼容.搭建私仓的步骤如下: 一:无代理.无认 ...

  5. CentOS7搭建Docker私有仓库----Docker

    有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似.目前Docker Registry已经升级到了v2 ...

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

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

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

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

  8. 手把手教你搭建Docker私有仓库

    章节一:centos7 docker安装和使用_入门教程 章节二:使用docker部署Asp.net core web应用程序 有了前面的基础,接下来的操作就比较简单了.先准备两台虚拟机,两台机器上都 ...

  9. 搭建Docker私有仓库&用户密码认证&web可视化界面

    1.拉取镜像 docker pull hyper/docker-registry-web docker pull registry 2.安装 yum install docker-compose 3. ...

随机推荐

  1. 洛谷P5280 [ZJOI2019]线段树 [线段树,DP]

    传送门 无限Orz \(\color{black}S\color{red}{ooke}\)-- 思路 显然我们不能按照题意来每次复制一遍,而多半是在一棵线段树上瞎搞. 然后我们可以从\(modify\ ...

  2. 20175226 2018-2019-2 《Java程序设计》第二周学习总结

    20175226 2018-2019-2 <Java程序设计>第二周学习总结 教材学习内容总结 基本数据类型与数组 标识符与关键字 标识符不能是关键字.true.false.null.且第 ...

  3. ubuntu服务器上提示 To run a command as administrator (user "root"), use "sudo <command>". See " 解决方案

    原因是你执行命令必须要在root用户下执行.其他用户权限不够.运行  sudo -s 切换到root用户下就可以了

  4. Deepin debian安装Libreoffice

    Libreoffice LibreOffice 是一款功能强大的办公软件,默认使用开放文档格式 (OpenDocument Format , ODF), 并支持 .docx, .xlsx, *.ppt ...

  5. php树形结构数组转化

    /** * @param array $list 要转换的结果集 * @param string $pid parent标记字段 * @param string $level level标记字段 */ ...

  6. ISP PIPLINE (六) 3A 综述

    前言: 上一篇文章: ISP PIPLINE (五) Denoise 下一篇文章: (1)3A定义包括什么 Iris:自动光圈,根据环境自动调节光圈. 既然讲到光圈,就先看一下光圈是什么,以及它如何影 ...

  7. [R] R语言for循环机制

    在做数据分段截取的时候,发现for循环的表现和其他语言不太一样. 上代码: :) { i = i + print(i) } 结果: [] [] [] [] 即作为循环计次的i, 并不会因为在循环体中的 ...

  8. X Open Cup named after E.V. Pankratiev. European Grand Prix

    A. Arithmetic Rectangle 对于一行或者一列的情况可以递推求出最大值. 对于至少一行或者一列的情况,可以定义四个格子一组横向和纵向的相等关系,然后悬线法求最大子矩阵. 时间复杂度$ ...

  9. Chapter 3 Introduction to Objects and Input/Output

    与声明一个primitive variable不同,声明一个对象的时候,并不创建用来存储一个对象的内存空间,而是创建了一个存储该对象所在内存空间的地址. 在java里,new是一个操作符,它让系统分配 ...

  10. MongDB 数据结构

    Object  ID :Documents 自生成的 _id String: 字符串,必须是utf-8 Boolean:布尔值,true 或者false (这里有坑哦~在我们大Python中 True ...