欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

基于docker的私有云部署(如何搭建一个docker私有仓库)

数码知识

孙宽凡优秀作者

原创内容 来源:小居数码网 时间:2024-08-11 12:09:01 阅读() 收藏:55 分享:75

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有1083个文字,大小约为5KB,预计阅读时间3分钟。

什么是Docker仓库仓库是集中存放镜像文件的场所。有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(Tag)。

如何搭建一个docker私有仓库

什么是Docker仓库

仓库分为公开仓库(Public)私有仓库(Private)两种形式。最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括Docker Pool 等,可以为大陆用户提供更稳定的访问。

从Docker仓库下载镜像后,运行容器

当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一台机器上使用这个镜像的时候,只需要从仓库上 pull 下来就可以了。

私有仓库的搭建

从私有仓库拉取镜像部署到不同的运行环境

官方的Docker hub是一个用于管理公共镜像的地方,我们可以在上面找到想要的镜像,也可以把自己的镜像推送上去。但对于企业来说,通常会创建一个私有仓库来存放程序镜像,以实现企业级标准的CI/CD流程。

那么如何拥有一个私有的镜像仓库用于管理我们自己的镜像呢?这个可以通过开源软件Registry来达成目的。下面介绍一下docker私有仓库的搭建方法。

Docker私有仓库安装

Docker官方在Docker hub上提供了registry的镜像,可以直接使用该镜像来构建一个容器,搭建私有仓库服务。

1. 拉取仓库镜像。从Docker hub上面拉取私有仓库镜像,拉取完成后可以看到TAG为latest的registry镜像。

docker pull registry
[root@k8s-master ~]# docker imagesREPOSITORY TAG    IMAGE ID         CREATED       SIZEregistry         latest  b8604a3fe854  3 weeks ago   26.2MB

2. 启动仓库容器。用镜像文件 registry:latest 启动私有仓库容器

docker run -di --name=my_registry -p 5000:5000 registry:latest

其中:

  • -di: docker后台启动,并开启,控制台交互;
  • -name: 指定容器名字,后续可以通过名字进行容器管理;
  • -p: 指定容器暴露的端口, 将主机5000端口绑定到容器的5000端口。
  • 3. 设置开机自启动

    docker container update --restart=always my_registry

    docker container update 命令用于更新一个或多个容器的配置。创建容器时添加参数 --restart=always ,目的是:当 Docker 重启时,容器可以自动启动。

    4. 测试私有镜像仓库是否搭建成功。

    打开浏览器,输入地址:http://121.36.87.2:5000/v2/ ,看到以下界面表示registry运行正常。

    测试registry运行情况

    5 上传镜像到Registry

    首先将本地主机的镜像命名为符合仓库要求的格式:registry_url:port/ImageName:tag。

    通过docker tag命令来实现命名,可以看到本地主机有了新的镜像文件。

    docker tag jdk_8u191:20190307 192.168.179.128:5000/jdk_8u191:20190307

    上传jdk镜像到Registry仓库:

    docker push 192.168.179.128:5000/jdk_8u191:20190307

    push成功之后,查看Registry服务器 /opt/registry 目录下已经有了刚推送上来的registry镜像,也可以在浏览器中输入http://ip_add:5000/v2/_catalog

    至此,我们的Registry私有仓库搭建完成,如果在今后中要使用,可以使用以下命令拉取:

    docker pull ip_add:5000/jdk_8u191:20190307

    Registry的发展

    Docker 开源了其 registry 实现,目前已经成为 CNCF 的沙箱项目Distribution。不过,Distribution 项目仅仅实现了对镜像存储的支持,对企业级的一些管理诉求并无法提供支持。

    为了实现企业级镜像仓库的支持,Harbor 项目应运而生。Harbor Registry由 VMware 公司中国研发中心云原生实验室原创,并于 2016 年 3 月开源。

    Harbor 在 Docker Distribution的基础上增加了企业用户必需的权限控制、镜像签名、安全漏洞扫描和远程复制等重要功能,还提供了图形管理界面。目前Harbor已经成为了国内企业私有容器仓库的首选方案。

    上面就是小居数码小编今天给大家介绍的关于(如何搭建一个docker私有仓库)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

    94%的朋友还想知道的:

    (339)个朋友认为回复得到帮助。

    部分文章信息来源于以及网友投稿,转载请说明出处。

    本文标题:基于docker的私有云部署(如何搭建一个docker私有仓库):http://sjzlt.cn/shuma/154597.html

    猜你喜欢