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.获取镜像 私 ...
随机推荐
- GitHub的实践
GitHub的实践 2017-05-08,晴,来小米已经一周的时间了,感谢领导能给我一周的时间来熟悉 ubuntu.spring boot.maven.docker.github .大家会问,这些不都 ...
- c#无限循环线程如何正确退出
c#无限循环线程如何正确退出 在主程序将要结束时,迅速正确退出无限循环执行的子线程.一般子线程循环执行会有一个指定的周期, 在子线程等待(或者睡眠)时,无法唤醒退出,尤其在执行周期较长时,子线程无法即 ...
- (原创)性能测试中,Oracle服务器定位CPU使用率高的瓶颈(SQL)
本篇博客记录一次性能测试过程中,定位对CPU使用率高的瓶颈问题,主要定位SQL为准 一.用SQL命令定位1.首先用TOP命令监控系统资源,如果是AIX系统,就用topas,进入TOP命令的滚动刷新数据 ...
- spoj 694. Distinct Substrings 后缀数组求不同子串的个数
题目链接:http://www.spoj.com/problems/DISUBSTR/ 思路: 每个子串一定是某个后缀的前缀,那么原问题等价于求所有后缀之间的不相同的前缀的个数.如果所有的后缀按照su ...
- 在JLabel上显示图片,并且图片自适应JLabel的大小
本文转载地址: http://blog.csdn.net/xiaoliangmeiny/article/details/7060250 在写<Core Java>上的示例代码时 ...
- Longest Palindromic Substring2015年6月20日
Given a , and there exists one unique longest palindromic substring. 自己的解决方案; public class Solution ...
- Windows 自动获取IP脚本
@echo off echo 正在自动获取IP地址.... set 连接名称=以太网 netsh interface ip set address name = "%连接名称%" ...
- Asp.Net Core MVC项目实现多语言(Globalization/Localization)
正好最近手上在给一个Razor MVC项目实现一个多语言功能,叫Globalization也好,Localization也好,whatever.最终要实现的效果呢,就是一键切换全站语言,并且开发的时候 ...
- Redis 小白指南(二)- 基础命令和五大类型:字符串、散列、列表、集合和有序集合
Redis 小白指南(二)- 基础命令和五大类型:字符串.散列.列表.集合和有序集合 引言 目录 基础命令 字符串类型 散列类型 列表类型 集合类型 有序集合类型 基础命令 1.获得符合规则的键名列表 ...
- SQL SERVER大话存储结构(4)_复合索引与包含索引
索引这块从存储结构来分,有2大类,聚集索引和非聚集索引,而非聚集索引在堆表或者在聚集索引表都会对其 键值有所影响,这块可以详细查看本系列第二篇文章:SQL SERVER大话存储结构 ...