Docker 仓库简介

什么是Docker仓库

  • Docker仓库就是存放docker镜像并有docker pull方法下载的云环境
  • Docker仓库分为公有仓库和私有仓库。
  • 公有仓库指Docker Hub(官方)等开放给用户使用、允许用户管理镜像。
  • 私有仓库指由用户自行搭建的存放镜像的云环境。

Docker 私有仓库搭建

搭建无认证私有仓库

第一步:在需要搭建仓库的服务器上安装docker。

第二步:在服务器上,从docker hub下载registry仓库

docker pull registry

第三步:在服务器上,启动仓库

docker run -d -ti --restart always --name my-registry -p 8000:5000 -v /my-registry/registry:/var/lib/registry registry

  

注意:registry内部对外开放端口是5000。默认情况下,会把镜像存放于容器内的/var/lib/registry(官网Dockerfile中查看)目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失。在这里指定了数据卷,会把镜像挂载到宿主机的/my-registry/registry 目录下。这样删除镜像,镜像也不会丢失

本地利用curl 服务器IP:8000/v2/_catalog 查看当前仓库中的存放的镜像列表。(注意打开8000端口访问)

本机验证私有仓库服务是否启动

curl 127.0.0.1:8000/v2/_catalog

  

私有仓库--上传、下载镜像

第一步:利用docker tag重命名需要上传的镜像

docker tag IMAGE 服务器IP:端口/IMAGE_NAME

docker tag centos 47.95.8.70:8000/centos-latest

  

第二步:利用docker push上传刚刚重命名的镜像

docker push 服务器IP:端口/centos

docker push 47.95.8.70:8000/centos-latest

注意:

必须重命名为服务器IP:端口/IMAGE_NAME

如果push出现了类似https的错误那么需要往配置文件/etc/docker/daemon.json里添加:”insecure-registries”:[“服务器IP:端口”]

然后重启docker。

下载私有仓库中的镜像

docker pull 47.95.8.70:8000/centos-latest

搭建带认证的私有仓库(一)

在服务器上:

第一步:删除先前创建的无认证的仓库容器

docker rm -f my-registry

第二步:创建存放认证用户名和密码的文件:

mkdir /my-registry/auth -p

第三步:创建密码验证文件。注意将将USERNAME和PASSWORD替换为设置的用户名和密码

docker run --entrypoint htpasswd registry -Bbn USERNAME PASSWORD > /my-registry/auth/htpasswd

docker run --entrypoint htpasswd registry -Bbn zhang zhangbiao > /my-registry/auth/htpasswd

  

第四步:重新启动仓库镜像

docker run -d -p 8000:5000 --restart=always --name docker-registry \
-v /my-registry/registry:/var/lib/registry \
-v /my-registry/auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
registry

在浏览器中查看镜像列表

http://47.95.8.70:8000/v2/_catalog

docker logout 47.94.153.230:8000

  

  

 带认证的私有仓库 -上传、下载镜像

在本地机器上:

docker tag centos 47.95.8.70:8000/centos-latest
docker push 47.95.8.70:8000/centos-latest

 

可以看到没有认证

第一步:首先登录到服务器

docker login -u username -p password 47.94.153.230:8000

第二步:然后执行pull或者push命令 第三步:操作完毕后,可以退出登录

这是如果想查看仓库中已有的镜像,那么需要进行http验证才可以。可以直接借助浏览器访问47.94.153.230:8000/v2/_catalog就可以访问了

注意这里:47.94.153.230指服务器IP

备忘:重点搭建私有仓库

Docker 核心技术之仓库的更多相关文章

  1. Docker镜像的仓库及底层依赖的核心技术(3)

    一.docker镜像的仓库 仓库分为公共仓库和私有仓库 DockerHub的官方仓库:https://hub.docker.com DockerPool社区仓库:https://dl.dockerpo ...

  2. docker镜像的仓库

    一.docker镜像的仓库 --- repos-registry的创建: 仓库分为公共仓库和私有仓库 DockerHub的官方仓库 https://hub.docker.com DockerPool社 ...

  3. 第四章 使用Docker镜像和仓库(二)

    第四章 使用Docker镜像和仓库(二) 回顾: 开始学习之前,我先pull下来ubuntu和fedora镜像 [#9#cloudsoar@cloudsoar-virtual-machine ~]$s ...

  4. 第四章 使用Docker镜像和仓库

    第4章 使用Docker镜像和仓库 回顾: 回顾如何使用 docker run 创建最基本的容器 $sudo docker run -i -t --name another_container_mum ...

  5. Docker镜像与仓库(一)

    Docker镜像与仓库(一) Docker镜像与仓库(一) 如何查找镜像? Docker Hub https://registry.hub.docker.com docker search [OPTI ...

  6. 微服务架构 - 搭建docker本地镜像仓库并提供权限校验及UI界面

    搭建docker本地镜像仓库并提供权限校验及UI界面 docker本地镜像仓库的作用跟maven私服差不多,特别是公司级或者是小组级开发好的docker仓库可以上传到本地镜像仓库中,需要用时,直接从本 ...

  7. 使用Nexus3构建Docker私有镜像仓库

    一.安装Nexus3 Nexus3是Sonatype提供的仓库管理平台,Nuexus Repository OSS3能够支持Maven.npm.Docker.YUM.Helm等格式数据的存储和发布:并 ...

  8. Docker 核心技术之镜像

    镜像简介 镜像是一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容.依赖库.环境变量和配置文件等. 通过镜像可以创建一个或多个容器. 镜像搜索 - docker search 作用: ...

  9. 【Docker】(2)---仓库、镜像、容器

    [Docker](2)---仓库.镜像.容器     学习Docker,我觉得首先要了解的是仓库.镜像.容器到底是什么,他们有什么区别. 一.通俗理解 1.Docker 镜像 (images) 容器运 ...

随机推荐

  1. 【深度学习】--DCGAN从入门到实例应用

    一.前述 DCGAN就是Deep Concolutions应用到GAN上,但是和传统的卷积应用还有一些区别,最大的区别就是没有池化层.本文将详细分析卷积在GAN上的应用. 二.具体 1.DCGAN和传 ...

  2. PERL学习笔记---正则表达式的应用

    使用m//匹配 //这是m//(模式匹配)的一种简写.同qw//操作一样,可以使用任何成对的分隔符.因此,可以使用m(fred), m<fred>, m{fred}, m[fred],或者 ...

  3. python接口自动化(六)--发送get请求接口(详解)

    简介 如果想用python做接口测试,我们首先有不得不了解和学习的模块.它就是第三方模块:Requests. 虽然Python内置的urllib模块,用于访问网络资源.但是,它用起来比较麻烦,而且,缺 ...

  4. java~使用自己的maven本地仓库

    本地仓库 主要是一种缓存,当你使用远程仓库中下载组件后,它下一次会优先从本地进行加载,一般位于USER_HOME/.m2目录下,我们自己也可以建立公用的包,把包发布到本地仓库,自己在其它项目里直接可以 ...

  5. SpringBoot启动原理及相关流程

    一.springboot启动原理及相关流程概览 springboot是基于spring的新型的轻量级框架,最厉害的地方当属自动配置.那我们就可以根据启动流程和相关原理来看看,如何实现传奇的自动配置 二 ...

  6. 如何在linux下使用git管理上传代码&误删文件修复

    首先需要安装git,sudo apt-get install git,这时就可以下载代码了. 然后先在gituhub上新建一个仓库,然后先在本地建一个git目录,git init 然后再配置用户名和邮 ...

  7. 微信公众号开发C#系列-4、获取接口调用凭证

    概述 获取接口调用凭证实质就是获取access_token.在微信接口开发中,许多服务的使用都离不开Access Token,Access Token相当于打开这些服务的钥匙,正常情况下会在7200秒 ...

  8. JVM平台上的响应式流(Reactive Streams)规范

    // Reactive Streams // 响应式流是一个倡议,用来为具有非阻塞后压的异步流处理提供一个标准.大家努力的目标集中在运行时环境(JVM和JavaScript)和网络协议上. 注:响应式 ...

  9. H5 可堆叠的圆环进度条,支持任意数量子进度条

    by Conmajia SN: S22-W1M 由来 看到一篇帖子<vue实用组件--圆环百分比进度条>,让我想起了很多年前我在WinForm下仿制过的Chrome进度条. ▲ 原版进度条 ...

  10. 前端知识复习: JS选中变色

    前端知识复习:JS选中变色 上篇文章 :前端知识复习:Html DIV 图文混排(文字放在图片下边) Js选中图片效果 <!DOCTYPE html> <html xmlns=&qu ...