Docker 之registry私有仓库搭建

官方提供的私有仓库docker registry用法

https://yeasy.gitbooks.io/docker_practice/repository/registry.html

1.下载registry镜像并且启动私有仓库容器

(1)下载

docker pull registry

私有仓库会被创建在容器的/var/lib/registry下,因此通过-v参数将镜像文件存储到本地的/opt/data/registry下 端口映射容器中的5000端口到宿主机的5000端口

(2)启动

docker run -d -p 服务器端口:容器端口 -v  服务器目录:私有仓库容器目录

docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry

(3)测试运行

检查启动的registry容器

docker ps

测试连接容器

# telnet 服务器IP 端口(根据运行的端口)

telnet 10.0.0.209 5000

直接用浏览器访问

http://ip+端口(5000)可以测试/v2/_catalog

页面会有如下显示

2.修改镜像tag

以docker registry的地址端口开头

# 语法: docker tag 原镜像名 服务器IP:5000/镜像名

如:

# docker tag centos 10.0.0.209:5000/mycentos

这个时候我们会遇到一个https限制推送镜像的问题

3.解决非 HTTPS 方式推送镜像问题

(1)修改/etc/docker/daemon.json配置

通过 Docker 的配置选项来取消这个限制,这里必须写正确json数据

添加一行配置

下面的ip为运行私有仓库的ip,端口5000

[root@node209 ~]# cat /etc/docker/daemon.json

{

"registry-mirrors": ["https://t7h7r7wr.mirror.aliyuncs.com"],

"insecure-registries":["10.0.0.209:5000"]

}

(2)添加/lib/systemd/system/docker.service配置

写入到[Service]配置块中,加载此配置文件

vim /lib/systemd/system/docker.service

添加一行配置

EnvironmentFile=-/etc/docker/daemon.json

结果如下截图:

(3)重新加载docker及重启并重启仓库容器

重新加载docker

systemctl daemon-reload

重启docker

systemctl restart docker

重启仓库容器

# docker ps -a     # 找到registry 镜像所对应的容器ID

# dokcer start 容器ID

(4)推送本地镜像

# docker push 10.0.0.209:5000/mycentos

5.查看推送情况

由于docker registry没有web界面,但是提供了API数据

要想查看已经上传的镜像, 通过以下链接访问即可查看:

官网教程:https://docs.docker.com/registry/spec/api/#listing-repositories

注:10.0.0.209为部署仓库的服务器IP

法一:

curl http://10.0.0.209:5000/v2/_catalog

法二:

浏览器访问http://10.0.0.209.10:5000/v2/_catalog

法一:截图

法二:截图

都可得上传镜像到私有仓库成功

6.删除本地镜像,从私有仓库中下载

#docker rmi 10.0.0.209:5000/mycentos    #删除刚才上传的本地镜像

#docker pull 10.0.0.209:5000/mycentos    #从私有仓库pull下载镜像

#docker images                       # 查看镜像

Docker 之registry私有仓库搭建的更多相关文章

  1. Docker Registry私有仓库搭建

    部署registry 准备一个registry.mydocker.com 的证书 对私有registry取名registry.mydocker.com 目录规划 仓库数据目录:/data/docker ...

  2. 6.云原生之Docker容器Registry私有镜像仓库搭建实践

    转载自:https://www.bilibili.com/read/cv15219863/?from=readlist #1.下载registry仓库并设置数据存放的目录(并生成认证账号密码) doc ...

  3. Docker部署Registry私有镜像库

    拉取镜像 docker pull registry:2.6.2   生成账号密码文件,这里采用htpasswd方式认证 docker run --rm --entrypoint htpasswd re ...

  4. Registry私有仓库搭建及认证

    本节内容: Registry相关概念 Registry V1和V2 安装Docker 搭建本地registry v2 搭建外部可访问的Registry 添加认证 更高级的认证 registry web ...

  5. 基于IP的docker private registry 私有仓库的搭建

    鉴于国内的网络环境,如果公司内部大量使用docker,镜像上传下载将是个非常耗时的工作,搭建一个私有仓库可以很好的解决自有镜像的存储,如果你在私有网络,不能使用域名的话,那么本文可以作为一个很好的例子 ...

  6. Docker registry私有仓库(七)

    Docker registry私有仓库搭建基本几步流程(采用nginx+认证的方式) 1. 申请免费的ssl证书 https://buy.wosiqn.com/free 2. 设置nginx ssl证 ...

  7. Docker系列教程03-Docker私有仓库搭建(registry)

    简介 仓库(Repository)是集中存放镜像的地方,又分为公共镜像和私有仓库. 当我们执行docker pull xxx的时候,它实际上是从registry.docker.com这个地址去查找,这 ...

  8. docker私有仓库搭建(ubuntu 14.04和centos7)

    最近是在做一个关于docker云化的项目,马上就要开始实战.下午先做了一个私有仓库搭建的实验,先大概做个笔记,有兴趣的蛮看一下吧. 先在所有机子上都安装上docker,我的是两台ubuntu,分别是1 ...

  9. CentOS7 Docker私有仓库搭建及删除镜像 【转】

    文章来源:centos7 Docker私有仓库搭建及删除镜像 如果不想用私有镜像库,你可以用docker的库 https://hub.docker.com 环境准备 环境:两个装有Docker 17. ...

随机推荐

  1. const在C与C++中的区别

    在C中,const不是常量,只能说是一个不能改变的变量(注意是变量),C编译器不能把const看成看成一个编译期间的常量,因为他在内存中有分配,C编译器不知道他在编译期间的值.所以不能作为数组定义时的 ...

  2. imread函数+cvtColor()函数

    加载图像(用cv::imread) imread功能是加载图像文件成为一个Mat对象,其中第一个参数表示图像文件名称 第二个参数,表示加载的图像是什么类型,支持常见的三个参数值 IMREAD_UNCH ...

  3. MySQL 避免使用字符串类型作为标识列

    避免使用字符串类型作为标识列: 消耗空间. 比数字类型慢(MyISAM 中对字符串使用压缩索引,查询会慢). 对于 MD5().UUID() 生成的随机字符串,这些值会分布在很大的空间内,导致 ins ...

  4. Linux - XShell - alt 快捷键的设置

    1. 概述 命令行的 alt 快捷键可能会冲突 2. 环境 os win10 centos7 xshell xhell6 3. 场景 开启 centos7 虚拟机 在 win10 打开 xshell6 ...

  5. POCO的理解

    POCO的名称有多种,pure old clr object. plain ordinary clr object等 POCO的概念是指那些没有从任何类继承,也没有实现任何接口,更没有被其它框架侵入的 ...

  6. jvm01

    hotspot:是jvm的核心组件(或者名称),jvm 需要对class文件进行编译成cpu能直接运行的代码.hotspot会对频繁使用的class代码进行缓存,不会再次编译,类似于缓存 client ...

  7. Linux创建连接命令 ln -s创建软连接

    ln -s 是linux中一个非常重要命令,一定要熟悉.它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s, 具体用法是:ln -s 源文件 目标文件. 当 我们需要在 ...

  8. CF-----Pillars

    . Pillars There are n pillars aligned in a row and numbered from 1 to n. Initially each pillar conta ...

  9. Spring bean的bean的三种实例化方式

     Bean 定义 被称作 bean 的对象是构成应用程序的支柱也是由 Spring IoC 容器管理的.bean 是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象.这些 bean ...

  10. IIS-反向代理配置&&插件安装

    参考:https://www.cnblogs.com/pengcc/p/4329207.html 网络上好多开场的文章就说了好多的原理之类的这里我们直接开始配置.不过也要简单说下win下配置反向代理只 ...