一、下载 registry 镜像

[root@localhost ~]# docker pull registry
Using default tag: latest
latest: Pulling from library/registry
c87736221ed0: Pull complete
1cc8e0bb44df: Pull complete
54d33bcb37f5: Pull complete
e8afc091c171: Pull complete
b4541f6d3db6: Pull complete
Digest: sha256:f87f2b82b4873e0651f928dcde9556008314543bd863b3f7e5e8d03b04e117f7
Status: Downloaded newer image for registry:latest

二、创建镜像存储目录

[root@localhost ~]# mkdir /data/registry

三、创建镜像容器

[root@localhost ~]# docker run -itd -v /data/registry:/var/lib/registry -p : --restart=always --name registry registry
e630985b09af4dedcf81a8dcb80202e591fefefc0a86e8328be70ce0643ab399
#检查容器是否创建成功
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e630985b09af registry "/entrypoint.sh /etc…" seconds ago Up seconds 0.0.0.0:->/tcp registry
#检查容器运行是否正常,如下显示说明运行正常
[root@localhost ~]# curl http://127.0.0.1/v2/_catalog
{"repositories":[]}

四、修改daemon.json文件,修改为如下内容

[root@localhost ~]# vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://wixr8yss.mirror.aliyuncs.com"],
"insecure-registries":["10.10.0.110:80"],
"bip":"172.31.0.1/16"
}

五、重启docker

[root@localhost ~]# systemctl restart docker

六、测试

#从官方pull busybox 镜像
[root@localhost ~]# docker pull busybox
Using default tag: latest
latest: Pulling from library/busybox
53071b97a884: Pull complete
Digest: sha256:4b6ad3a68d34da29bf7c8ccb5d355ba8b4babcad1f99798204e7abb43e54ee3d
Status: Downloaded newer image for busybox:latest
#查看当前镜像
[root@localhost ~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest 64f5d945efcc days ago .2MB
registry latest f32a97de94e1 months ago .8MB
#为镜像打tag
[root@localhost ~]# docker tag busybox:latest 10.10.0.110:80/busybox:v1
#查看tag 是否标记成功
[root@localhost ~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
10.10.0.110/busybox v1 64f5d945efcc days ago .2MB
busybox latest 64f5d945efcc days ago .2MB
registry latest f32a97de94e1 months ago .8MB
#将镜像推送到私有镜像仓库中
[root@localhost ~]# docker push 10.10.0.110:/busybox:v1
The push refers to repository [10.10.0.110:/busybox]
d1156b98822d: Pushed
v1: digest: sha256:4fe8827f51a5e11bb83afa8227cbccb402df840d32c6b633b7ad079bc8144100 size:
#测试拉取镜像
[root@localhost repositories]# docker pull 10.10.0.110:/busybox:v1
v1: Pulling from busybox
53071b97a884: Pull complete
Digest: sha256:4fe8827f51a5e11bb83afa8227cbccb402df840d32c6b633b7ad079bc8144100
Status: Downloaded newer image for 10.10.0.110:/busybox:v1

七、查看当前私有仓库中有哪些镜像以及镜像的tag

[root@localhost repositories]# curl  http://10.10.0.110:80/v2/_catalog
{"repositories":["busybox"]}
[root@localhost repositories]# curl http://10.10.0.110:80/v2/busybox/tags/list
{"name":"busybox","tags":["v1"]}

docker 创建私有镜像之 registry的更多相关文章

  1. docker配置私有镜像仓库-registry和hyper/docker-registry-web

    1.前言️​ Docker hub是远程仓库,是国外的,push pull速度特别慢,尤其是网速不好的时候,页面都点不进去,官网 但是可以配置阿里云镜像加速哦: 因此搭建一个私有的镜像仓库用于管理我们 ...

  2. Docker创建私有镜像仓库

    Docker官方提供了一个工具docker-registry,可以借助这个工具构建私有镜像仓库: 1.拉取registry镜像 # docker pull registry//可以使用 docker ...

  3. Docker部署注册中心、Docker创建私有镜像库、自签名证书、Deploy a registry server

    这是我在内部部署Docker Registry时记录下来的笔记,操作环境是Centos 7.Docker 18.06.1-ce 1.运行registry 我当前所使用的主机的IP是192.168.1. ...

  4. .NETCore 实现容器化Docker与私有镜像仓库管理

    原文:.NETCore 实现容器化Docker与私有镜像仓库管理 一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技 ...

  5. 利用docker实现私有镜像仓库

    利用docker实现私有镜像仓库 在linux服务器上安装了docker过后,可以拉取docker镜像仓库: docker pull registry 再执行命令让镜像run起来: docker ru ...

  6. 搭建私有镜像仓库registry 2.0

    搭建 docker run -d -p 5000:5000 --restart=always --name registry2 registry:2 就可以将自己的镜像 push到这个私有的镜像仓库 ...

  7. docker从私有镜像库pull/push镜像问题:Error response from daemon: Get https://xxxx.com/: x509: certificate signed by unknown authority

    docker从私有镜像库pull/push镜像问题:Error response from daemon: Get https://harbor.op.xxxx.com/v2/: x509: cert ...

  8. docker创建私有仓库

    由于网速和大中华局域网效果,使得我们在DockerHub下载镜像的速度很慢,甚至一些国内的镜像仓库,也感觉速度不是很好.所以,很有必要在本地或者一个我们访问很快速的地方(自己的云服务器)搭建一套镜像仓 ...

  9. 手动搭建Docker本地私有镜像仓库

    实验环境:两个Centos7虚拟机,一个是Server,用作客户端,另一个是Registry,用作Docker私有镜像仓库. 基础配置 查看一下两台虚拟机的IP地址 Server的IP地址是192.1 ...

随机推荐

  1. 微服务浅谈&服务治理的演变过程

    这两天对互联网的架构演变进行了简单了解,并对微服务的出现很感兴趣,所以对相关知识进行了简单的整理与总结. 本篇文章先简单介绍了互联网架构的演变,进而介绍了服务化,最后介绍了微服务及最新的服务网格(Se ...

  2. Spring Boot 自定义 Shiro 过滤器,无法使用 @Autowired 解决方法

    在 Spring Boot 中集成 Shiro,并使用 JWT 进行接口认证. 为了统一对 Token 进行过滤,所以自定义了一个 JwtTokenFilter 过滤器. 期间遇到了以下几个问题,这里 ...

  3. ifame内嵌页面全屏完美展示

    <body style= marginwidth= marginheight= width='100%' height='100%' allowfullscreen='true' src='ht ...

  4. Python 练习题:用索引取出LIST中的值

    请用索引取出下面list的指定元素,分别为Apple,Python,Lisa # -*- coding: utf-8 -*- # 请用索引取出下面list的指定元素 L = [ ['Apple','G ...

  5. Kubernetes中的Volume介绍

    Kubernetes中支持的所有磁盘挂载卷简介发表于 2018年1月26日 Weihai Feb 10,2016 7400 字 | 阅读需要 15 分钟 容器磁盘上的文件的生命周期是短暂的,这就使得在 ...

  6. .Net IOC框架入门之——Unity

    一.概述 IOC:英文全称:Inversion of Control,中文名称:控制反转,它还有个名字叫依赖注入(Dependency Injection). 作用:将各层的对象以松耦合的方式组织在一 ...

  7. jenkins 配置ssh remotes 报Failed to authenticate with public key

    问题:jenkins配置ssh远程连接时候报 ERROR: Failed to authenticate with public key com.jcraft.jsch.JSchException: ...

  8. Python3的map/reduce

    Python内建了map()和reduce()函数. 原文在这里MapReduce: Simplified Data Processing on Large Clusters,map/reduce的概 ...

  9. Class.forName() 与 ClassLoader.loadClass()的区别

        看到一个面试题,说说Class.forName() 与 ClassLoader.loadClass()的区别,特意记录一下,方便后续查阅.     在我们写java代码时,通常用这两种方式来动 ...

  10. 基于RGB与HSI颜色模型的图像提取法

    现实中我们要处理的往往是RGB彩色图像.对其主要通过HSI转换.分量色差等技术来提出目标. RGB分量灰度化: RGB可以分为R.G.B三分量.当R=G=B即为灰度图像,很多时候为了方便,会直接利用某 ...