Docker搭建私有仓库registry

拉取上传镜像

拉取镜像

docker pull <registry>[:<port>]/[<namespace>/]<name>:<tag>
# registry  :仓库服务器地址;不指定默认是docker hub
# port      :端口;默认443,因为是https协议;
# namespace :名称空间,指是哪个用户的仓库,如果是顶层仓库,可以省;
# name      :仓库名;
# tag       :标签名;默认是latest版本;

上传镜像

docker push [OPTION]NAME[:TAG]

搭建私有仓库distribution

docker 提供的开源registry,只能作为存储镜像的仓库,没有额外的功能(比如管理页面等);

# 拉取镜像
[[email protected] ~]# docker pull registry
Using default tag: latest
latest: Pulling from library/registry
486039affc0a: Pull complete
ba51a3b098e6: Pull complete
8bb4c43d6c8e: Pull complete
6f5f453e5f2d: Pull complete
42bc10b72f42: Pull complete
Digest: sha256:7d081088e4bfd632a88e3f3bcd9e007ef44a796fddfe3261407a3f9f04abe1e7
Status: Downloaded newer image for registry:latest
docker.io/library/registry:latest

# 启动registry容器
[[email protected] ~]# docker run -d --name registry -p 5000:5000 -v /data/registry:/var/lib/registry registry:latest
2edaee8264d9276e88fa776ec73bcd2fe8810e340fba43def88036751f3a3dc1

从私有仓库上传下载镜像

# 给本地仓库打上合适的标签
[[email protected] ~]# docker tag busybox:latest 192.168.100.61:5000/busybox:v0.1
[[email protected] ~]# docker images
REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
192.168.100.61:5000/busybox   v0.1                83aa35aa1c79        5 days ago          1.22MB

# 上传镜像(失败原因:docker上传下载默认只支持https协议,搭建的私有仓库是http协议
[[email protected] ~]# docker push 192.168.100.61:5000/busybox:v0.1
The push refers to repository [192.168.100.61:5000/busybox]
Get https://192.168.100.61:5000/v2/: http: server gave HTTP response to HTTPS client

# 将私有仓库认证为安全仓库,重启
[[email protected] ~]# vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"],    # 这个是我的阿里云镜像加速器地址
  "insecure-registries": ["192.168.100.61:5000"]
}
[[email protected] ~]# systemctl daemon-reload
[[email protected] ~]# systemctl restart docker

# 再次上传镜像
[[email protected] ~]# docker push 192.168.100.61:5000/busybox:v0.1
The push refers to repository [192.168.100.61:5000/busybox]
a6d503001157: Pushed
v0.1: digest: sha256:afe605d272837ce1732f390966166c2afff5391208ddd57de10942748694049d size: 527

# 在私有仓库验证
[[email protected] ~]# ls /data/registry/docker/registry/v2/
blobs  repositories

# 删除镜像再从私有仓库拉取
[[email protected] ~]# docker rmi 192.168.100.61:5000/busybox:v0.1
Untagged: 192.168.100.61:5000/busybox:v0.1
Untagged: 192.168.100.61:5000/[email protected]:afe605d272837ce1732f390966166c2afff5391208ddd57de10942748694049d
[[email protected] ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              83aa35aa1c79        5 days ago          1.22MB
registry            latest              708bc6af7e5e        7 weeks ago         25.8MB
[[email protected] ~]# docker pull 192.168.100.61:5000/busybox:v0.1
v0.1: Pulling from busybox
Digest: sha256:afe605d272837ce1732f390966166c2afff5391208ddd57de10942748694049d
Status: Downloaded newer image for 192.168.100.61:5000/busybox:v0.1
192.168.100.61:5000/busybox:v0.1
[[email protected] ~]# docker images
REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
192.168.100.61:5000/busybox   v0.1                83aa35aa1c79        5 days ago          1.22MB
busybox                       latest              83aa35aa1c79        5 days ago          1.22MB
registry                      latest              708bc6af7e5e        7 weeks ago         25.8MB

原文地址:https://www.cnblogs.com/HsLM/p/12496889.html

时间: 2024-10-16 04:08:40

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

Docker 搭建私有仓库

搭建私有仓库 首先在136机器上下载registry镜像 $ sudo docker pull registry 下载完之后我们通过该镜像启动一个容器 $ sudo docker run -d -p 5000:5000 registry 默认情况下,会将仓库存放于容器内的/tmp/registry目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失,所以我们一般情况下会指定本地一个目录挂载到容器内的/tmp/registry下,如下: $ sudo docker run -d -p 5000

Docker搭建私有仓库

1,下载仓库镜像. docker pull  registry    //主要用于搭建私有仓库的. 2,将宿主机端口映射到容器中去,容器的5000端口是不能更改的. docker run -d -p 5000:5000 registry //以registry镜像启动容器,监听5000端口 3,进入到私有仓库容器中去. docker exec -it  796(容器id)  /bin/sh    //这里是sh 不是bash 因为这里是没有做软连接的. netstat -lnp 查看5000端口

Docker搭建私有仓库(内网)

1.搭建私有仓库安装yum ×××tall docker-registry但是安装后是后面这个包docker-distribution然后启动服务 服务默认使用的是5000端口然后开始给imange打tag 如果不能解析主机名的话 需要使用ip地址打tag 如下图:docker tag busybox:latest 172.17.234.180:5000/busybox:latest然后开始上传 但是上传会报错 如图这是因为registry默认使用的是https协议而我们上传image默认使用的

Docker 之 私有仓库registry

摘要: 1.拉去 registry镜像,例如在daocloud.io/registry这个私有镜像仓库 docker pull daocloud.io/registry 2.运行容器,挂在镜像内docker镜像仓库/var/lib/registry 至本地/root/my_docker_registry 1.拉去 registry镜像,例如在daocloud.io/registry这个私有镜像仓库 docker pull daocloud.io/registry 2.运行容器,挂在镜像内dock

docker基础 私有仓库repository搭建(1) registry

使用docker的login命令之后,可以使用push命令将镜像推送到dockerhub上,但是dockerhub毕竟在公网上,免费的帐户只有一个private 的repository是免费的,剩下的就都只能做成public的.由于种种限制,企业私有仓库的创建就有了各种应用场景.本文将从使用registry的方式简单介绍如何搭建私有的repository. pull registry镜像 使用到的registry镜像 [[email protected] ~]# docker search re

docker私有仓库registry部署

准备环境:两个装有Docker(版本1.12)的虚拟机虚拟机一:192.168.2.55 用户开发机虚拟机二:192.168.2.10 用作私有仓库 搭建私有仓库 首先在10机器上下载registry镜像 $ docker pull registry 下载完之后我们通过该镜像启动一个容器 $ sudo docker run -d --restart=always -p 5000:5000 -v /export/data/docker/registry:/tmp/registry registry

docker学习(8) 在mac机上搭建私有仓库

docker的私有仓库类似maven的私服,一般用于公司内部搭建一个类似docker hub的环境,这样上传.下载镜像速度较快,本文将演示如何在mac上利用docker-machine搭建无需SSL证书的私有仓库. 一.查看docker-machine虚拟机IP docker-machine ip default 默认情况下docker-toolbox创建的虚拟机名称为default,如果您的虚拟机名字不是这个,上面命令最后的default换成真实的虚拟机名字,假设default分配的IP为19

Docker容器学习梳理--私有仓库Registry使用

但有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似.使用私有仓库有许多优点: 1)节省网络带宽,针对于每个镜像不用每个人都去中央仓库上面去下载,只需要从私有仓库中下载即可: 2)提供镜像资源利用,针对于公司内部使用的镜像,推送到本地的私有仓库中,以供公司内部相关人员使用. 目前Docker Registry已经升级到了v2,最新版的Docker已不再支持v1.Registry v2使用Go语言编写

教你分分钟搞定Docker私有仓库Registry

一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候我们的服务器无法访问互联网,或者你不希望将自己的镜像放到公网当中,那么你就需要Docker Registry,它可以用来存储和管理自己的镜像. 二.安装Docker及Registry 安装Docker见之前博文: http://www.cnblogs.com/Javame/p/5492543.html 安装Regi