前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker学习总结之docker创建私有仓库(private Repositories)

Docker学习总结之docker创建私有仓库(private Repositories)

作者头像
随机来个数
发布2018-04-16 15:33:46
6330
发布2018-04-16 15:33:46
举报
文章被收录于专栏:写代码的海盗写代码的海盗

Docker 创建 Private Repositories

  前言

    基于GFW的缘故,国内大陆基本无法pull国外的镜像,更别说官方的index了。如果images无法pull下来,那么docker就失去了存在的意义,就更别提国内广大程序猿为docker而献身奋斗了。所以基于此,笔者认为有必要国内用户自行搭建一个Private Repositories。一方面为了更好的研究,使用Docker。另一方面也是为了节省pull和push的时间,要不然动不动就是几十分钟的耗时,谁能承担起这些时间成本。最后一点,也是为了可以更好的管理images,毕竟国内很过公司出于各种目的还是不希望公开这些images。

    所以基于此,创建一个Private Repository就显得尤为必要了。

  步骤

  方法一:

    最简单的方法莫过于直接pull下来,docker官网提供的registry镜像了。但是需要说明的是官网目前提供的最新版本不稳定,有bug(笔者目前看到的最新版本为0.8.1,所有版本可以在https://registry.hub.docker.com/_/registry/tags/manage/查看)。而且下面各国网友也反映了,0.8.1的确存在问题。因此,笔者经过多次评测,选取了最稳定的0.7.1版本。

    执行以下命令既可完成private repository的创建:

代码语言:javascript
复制
docker run -d -p 5000:5000 --name registry registry:0.7.1

  方法二:

    使用git上面的源码进行创建。

    首先登陆到docker在git上面的源码页面,https://registry.hub.docker.com/_/registry/ 。

    因为目前最新的0.8.1版本存在bug,因此我们需要tag为0.7.1的版本。在页面上部选择tag 0.7.1即可。

    考虑到国内的网速,所以建议直接下载zip压缩包。在页面右侧,选择Download ZIP。把0.7.1版本下载下来。

    将ZIP压缩包上传到服务器(推荐使用Ubuntu),解压后即为Docker 源码。

    我们下面的步骤是安装registry到本地服务器上,你也可以选择将source build成image,然后执行image。

    安装registry到本地服务器的步骤:

    Install the system requirements for building a Python library:

代码语言:javascript
复制
sudo apt-get install build-essential python-dev libevent-dev python-pip liblzma-dev

    Then install the Registry app:

代码语言:javascript
复制
sudo pip install docker-registry

    等待安装完成后,执行命令开始运行registry:

代码语言:javascript
复制
gunicorn --access-logfile - --debug -k gevent -b 0.0.0.0:5000 -w 1 docker_registry.wsgi:application

  方法三:

    同样基于git的源码,我们build成image,然后执行这个image。

    在docker_registry目录里面:

代码语言:javascript
复制
docker build -t registry .

    build执行完之后,同样执行:

代码语言:javascript
复制
docker run -d -p 5000:5000 registry

  总结

    方法一和方法三,均需要download 国外的一些images,因此国内的使用存在局限性。而方法二,完全不依赖国外数据,但需要一些docker操作基础和git操作基础。

    大家在使用时,就需要考虑实际情况来选择安装方式了。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014-09-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档