保存镜像的地方成为仓库(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. UI设计师给的px尺寸单位,安卓如何换算成dp?

    很多UI工程师为了适配IOS,常常拿IOS手机作用参考模型,设计出来的UI稿只有PX标注的.他们也不懂Android的dp和sp单位是怎么回事.这个时候我们Android工程师如果不注意怎么转换的话, ...

  2. java 查找类的所有子类

    package _02; import java.io.File; import java.net.URL; public class MainTest_FindAllSubClass { publi ...

  3. python---循环双向链表实现

    这个方案里的尾插入,就使用了更高效的prev指标. 但感觉remove的代码不够和前面统一, 我有代码洁癖了???? # coding = utf-8 # 双向链表 class Node: # 双向链 ...

  4. creating server tcp listening socket 127.0.0.1:6379: bind No error

    参考链接:https://blog.csdn.net/n_fly/article/details/52692480 1.window10环境下面安装的redis,之前安装好弄了一下,过了好几天,再次使 ...

  5. ionic2项目中实现md5加密

    1. 安装插件 npm i ts-md5 --save 2. 在项目中引用 import { Md5 } from 'ts-md5/dist/md5'; ... ionViewDidLoad() { ...

  6. Azure Database for MySQL 报 Please specify SSL options and retry.

    Exception has been thrown by the aspect of an invocation. ---> Authentication to host 'xxx.mysql. ...

  7. 基于for循环的呼吸灯

    #include "stm32f10x.h" #include "stm32f10x_gpio.h" //#include "led.h" ...

  8. java线程系列之三(线程协作)

    本文来自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/7433673,转载请注明. 上一篇讲述了线程的互斥(同步),但是在很多情况 ...

  9. 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习3

    #include <iostream> using namespace std; void showmenu(void) { cout<<"Please enter ...

  10. PYQT窗口可视化编程

    1.用PYQT的Qt设计师设计完程序UI后,将其转换为UI.py脚本. 转换步骤见帖:http://www.cnblogs.com/doudongchun/p/3694765.html 2.在同目录下 ...