docker 私有仓库搭建
知识基础:ubuntu系统安装,docker安装,了解docker的基础知识
下载镜像(如果下载2版本以上的需要配置ssl证书,这里先用0.9.1的演示)
root@ubuntu:/# docker pull registry:0.9.1
root@ubuntu:/# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry 0.9.1 bdc26a966725 4 weeks ago 422.9 MB
csphere/ent 0.1 f9118a2c0edc 3 weeks ago 212.1 MB
root@ubuntu:/#
生成容器(用编程的术语说:将镜像实例化出一个容器)
端口号用5000,名称:registry 镜像文件和版本号:registry:0.9.1
root@ubuntu:/# docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:0.9.1
查看有哪些容器
root@ubuntu:/# docker ps –a
root@ubuntu:/# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9416c29b3cfd registry:0.9.1 "docker-registry" 45 minutes ago Up 14 minutes 0.0.0.0:5000->5000/tcp registry
root@ubuntu:/#
跳过,如果需要可删除没用的容器
root@ubuntu:/# docker rm –f 容器ID
用浏览器访问以下地址会出现一个弹出的下载窗口,证明私有仓库已安装好,后面是测试和修改配置步骤
http://172.16.160.32:5000
root@ubuntu:/# docker tag csphere/ent:0.1 172.16.160.32:5000/csphere/ent:0.1
修改docker的配置,不然push的时候会报错。
root@ubuntu:/# vi /etc/default/docker
添加以下内容到配置文件中:
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=172.16.160.32:5000"
上传镜像到私有仓库
root@ubuntu:/# docker push 172.16.160.32:5000/csphere/ent
The push refers to a repository [172.16.160.32:5000/csphere/ent] (len: 1)
Sending image list
Pushing repository 172.16.160.32:5000/csphere/ent (1 tags)
f1b10cd84249: Image successfully pushed
172633e38420: Image successfully pushed
fab4b1df8eb1: Image successfully pushed
f9118a2c0edc: Image successfully pushed
Pushing tag for rev [f9118a2c0edc] on {http://172.16.160.32:5000/v1/repositories/csphere/ent/tags/0.1}
root@ubuntu:/#
查询私有仓库内的镜像
root@ubuntu:/#curl http://172.16.160.32:5000/v1/search
{"num_results": 1, "query": "", "results": [{"description": "", "name": "csphere/ent"}]}
root@ubuntu:/#
root@ubuntu:/# docker rmi 172.16.160.32:5000/csphere/ent:0.1
Untagged: 172.16.160.32:5000/csphere/ent:0.1
Deleted: f9118a2c0edcf4782c8100d29fafde29dfc3e16aa4c17f648bd9ef03f9b4a6a0
root@ubuntu:/#
下载前确认已经没有csphere/ent镜像文件
root@ubuntu:/# docker images
以下命令从172.16.160.32:5000上的csphere目录下下载版本号为0.1的ent镜像。
注:要指定IP地址不然会从公网上下载镜像,要指定版本,不然会提示找不到相应镜像。
root@ubuntu:/# docker pull 172.16.160.32:5000/csphere/ent:0.1
Pulling repository 172.16.160.32:5000/csphere/ent
f9118a2c0edc: Download complete
f1b10cd84249: Download complete
172633e38420: Download complete
fab4b1df8eb1: Download complete
Status: Downloaded newer image for 172.16.160.32:5000/csphere/ent:0.1
root@ubuntu:/#
下载后确认有csphere/ent镜像文件
root@ubuntu:/# docker images
错误示范:
root@ubuntu:/# docker pull 172.16.160.32:5000/csphere/ent
Pulling repository 172.16.160.32:5000/csphere/ent
FATA[0004] Tag latest not found in repository 172.16.160.32:5000/csphere/ent
root@ubuntu:/# curl http://172.16.160.32:5000/v1/search
{"num_results": 1, "query": "", "results": [{"description": "", "name": "csphere/ent"}]}root@ubuntu:/#
root@ubuntu:/# docker pull csphere/ent
Pulling repository csphere/ent
FATA[0020] Error: image csphere/ent:latest not found
root@ubuntu:/# docker pull csphere/ent:0.1
Pulling repository csphere/ent
FATA[0013] Error: image csphere/ent:0.1 not found
docker 私有仓库搭建的更多相关文章
- CentOS7 Docker私有仓库搭建及删除镜像 【转】
文章来源:centos7 Docker私有仓库搭建及删除镜像 如果不想用私有镜像库,你可以用docker的库 https://hub.docker.com 环境准备 环境:两个装有Docker 17. ...
- Docker学习笔记 — Docker私有仓库搭建
Docker学习笔记 — Docker私有仓库搭建 目录(?)[-] 环境准备 搭建私有仓库 测试 管理仓库中的镜像 查询 删除 Registry V2 和Mavan的管理一样,Dockers ...
- docker私有仓库搭建(ubuntu 14.04和centos7)
最近是在做一个关于docker云化的项目,马上就要开始实战.下午先做了一个私有仓库搭建的实验,先大概做个笔记,有兴趣的蛮看一下吧. 先在所有机子上都安装上docker,我的是两台ubuntu,分别是1 ...
- Docker学习笔记 — Docker私有仓库搭建【转载】
标签: Docker 2015-03-10 21:08 24190人阅读 评论(0) 收藏 举报 分类: Docker(26) 目录(?)[+] 和Mavan的管理一样,Dockers不仅 ...
- CentOS环境下Docker私有仓库搭建
本文讲述如何搭建docker私有仓库. 有了docker hub,为什么还要搭建docker私有仓库? 1.性能考虑:docker hub的访问要通过互联网,性能太低. 2.安全性:更多的时候,镜像不 ...
- docker私有仓库搭建和资源限制
Docker 私有仓库的搭建 docker 私有仓库默认只支持https协议的访问 不支持http协议 如果需要允许通过http协议访问 必须手动修改配置文件 docker官方默认提供的仓库 提供 ...
- centos7 docker私有仓库搭建
习Docker的过程中Docker的私有仓库一直没能成功,就是因为CentOS 6.x和CentOS 7默认引入了支持https认证,每次在push和pull的时候都会报错,今天是周末,利用一天的时间 ...
- docker私有仓库搭建及认证
什么是docker? Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机 ...
- Docker私有仓库搭建
# 环境 系统 Linux 3.10.0-123.9.3.el7.x86_64 CentOS 7.0.1406 (Core) Docker 1.12.0, build 8eab29e 1.获取镜像 私 ...
随机推荐
- 浅析SQL Server数据库中的伪列以及伪列的含义
SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值:对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个 ...
- JAVA内存模型5-锁
锁的释放-获取建立的happens before关系 锁是java并发编程中最重要的同步机制.锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息.下面是锁释放-获 ...
- PHP 中级内容
1.面向对象编程(OOP) 2.模板引擎(smarty) 3.MYSQL(中级操作) 数据库抽象层(PDO): 4.Ajax(异步刷新) 5.Js框架(jQuery) Xml+JSON数据 ...
- 瀑布流原生ajax,demo
最近听朋友们说起瀑布流挺多的,自己就去研究下了,一个简单的原生demo,分享给大家... 简单分为三个文档,有详细的注释 img:ajax.php:demo.php 其中img中放入图片 1.jpg: ...
- 刑天DDOS攻击器下一版本即将使用NTP放大功能
刑天DDOS攻击器下一版本即将使用NTP放大功能 在一次无语实验中无意发现NTP方法后的攻击流量相当可观,Linux实测G口高达30G,也就是说最大可以放大30倍的攻击流量是何等的威武.而 ...
- XML文件生成
import java.io.* ; import org.w3c.dom.* ; import javax.xml.parsers.* ; import javax.xml.transform.* ...
- OpenCV探索之路(十三):详解掩膜mask
在OpenCV中我们经常会遇到一个名字:Mask(掩膜).很多函数都使用到它,那么这个Mask到底什么呢? 一开始我接触到Mask这个东西时,我还真是一头雾水啊,也对无法理解Mask到底有什么用.经过 ...
- 使用adb报错;error: unknown host service
用adb往虚拟机Genymotion上安装apk时报错 报这个错误是因为主机端口5037被占用 接下来就要查看5037被哪个应用程序占用,然后结束该程序,才能使用adb 在cmd输入命令netstat ...
- php实现批量修改文件名称
场景叙述:比如我要将D:\WWW\img\Gastroenterology这个文件夹下图片要重新命名成1.jpg,2.jpg.......这样的有规律名字, 如下图: 那么我们就可以利用php的ren ...
- React模块化开发
借助前端构建工具webpack 1.webpack是facebook为react量身打造的构建工具 2.主要作用是实现模块化,代码整合,代码分割的作用 3.使用webpack整合以后 也不需要使用br ...