使用docker-hub
使用docker hub 需要其账号
基本操作
查找镜像
sudo docker search centos
每个用户有自己的命名空间,如:centos是存仓库中的镜像文件,admln/centos则是admln镜像库中的镜像文件
下载镜像
sudo docker pull centos
上传镜像
sudo docker push centos
存储库
1.私有库
2.公共库
3.组织和机构
一个私人仓库有用的地方在于你可以分享给你团队的成员或者你的组织成员
自动构建
自动创建(Automated Builds)功能对于需要经常升级镜像内程序来说,十分方便。 有时候,用户创建了镜像,安装了某个软件,如果软件发布新版本则需要手动更新镜像
自动创建允许用户通过 Docker Hub 指定跟踪一个目标网站(目前支持 GitHub 或 BitBucket)上的项目,一旦项目发生新的提交,则自动执行创建
工作原理是添加一个GitHub或者BitBucket的仓库钩子,当你推送提交的时候就会触发构建和更新
- 1.创建一个Docker Hub账户并且登陆
- 2.通过“Link Accounts”按钮连接你的GitHub或者BitBucket
- 3.配置自动化构建
- 4.选择一个
Github和BitBucket项目来构建你想要构建的Dockerfile - 5.选择你想建立的分支(默认是主分支)
- 6.给自动构建创建一个名称
- 7.指定一个Docker标签来构建
- 8.指定Dockerfile的路径,默认是
/
私有仓库
有时候使用 Docker Hub 这样的公共仓库可能不方便,用户可以创建一个本地仓库供私人使用
docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库
安装
方法一、
通过下载 registry 镜像运行来实现私服的搭建
sudo docker run -d -p : registry
默认放在/tmp/registry,可以指定目录
sudo docker run -d -p : -v /opt/data/registry:/tmp/registry registry
方法二、
对于 Ubuntu 或 CentOS 等发行版,可以直接通过源安装
centos:
sudo yum install -y python-devel libevent-devel python-pip gcc xz-devel
sudo python-pip install docker-registry
也可以从 docker-registry 项目下载源码进行安装
... ...
在私有仓库上传、下载、搜索镜像
创建好私有仓库之后,就可以使用 docker tag 来标记一个镜像,然后推送它到仓库,别的机器上就可以下载下来了。例如私有仓库地址为 192.168.7.26:5000
例如
使用docker tag 将 test 这个镜像标记为 192.168.7.26:5000/test
sudo docker tag test 192.168.7.26:/test
使用 docker push 上传标记的镜像
sudo docker push 192.168.7.26:/test
用 curl 查看仓库中的镜像
curl http://192.168.7.26:5000/v1/search
以到另外一台机器去下载这个镜像
sudo docker pull 192.168.7.26:/test
批量上传
wget https://github.com/yeasy/docker_practice/raw/master/_local/push_images.sh; sudo chmod a+x push_images.sh
./push_images.sh ubuntu:latest centos:centos7
私有仓库配置文件

可以直接使用它们来进行开发或生产部署
可以看到

本地私有仓库默认保存在/tmp/registry 中
私有仓库可以搭建在其他地方例如S3或者其他存储设备
使用docker-hub的更多相关文章
- 配置 Docker 加速器(Docker Hub Mirror)
Docker 加速器是什么,我需要使用吗? 使用 Docker 的时候,需要经常从官方获取镜像,但是由于显而易见的网络原因,拉取镜像的过程非常耗时,严重影响使用 Docker 的体验.因此 DaoCl ...
- Docker Hub仓库注册,使用
首先保证可以访问Docker Hub,所以需要先把host替换一下 : Google hosts ; 然后就是注册Docker Hub账户:https://hub.docker.com/; 然后就是在 ...
- 利用Docker Hub上的Nginx部署Web应用
Docker Hub上提供了很多镜像,如Nginx,我们不需要自己从ubuntu开始装Nginx再做发布,只需要先下载镜像到本地 docker pull nginx 在/opt下新建文件夹API,将需 ...
- docker学习笔记7:发布镜像到docker hub上
镜像创建好后,很重要的一个操作就是共享和发布.可以将自己创建的镜像发布到docker hub上,也可以发布到自己的私有docker hub上. 要想发布镜像到dokcer hub上,首先要在dokce ...
- docker学习笔记4:利用docker hub上的mysql镜像创建mysql容器
docker hub上有官方的mysql镜像,我们可以利用它来创建mysql容器,作为一个服务容器使用. 1.下载mysql镜像 docker pull mysql 2.创建镜像 docker run ...
- Docker Hub工作流程-Docker for Web Developers(6)
在Github上创建项目仓库 和创建其他Github项目一样,在Github创建一个仓库,然后在仓库里面增加一个dockerfile,然后提交并推送到Github上. 我已经创建的仓库地址:https ...
- 在Docker Hub上查找可用的Image映像
任何人都可以创建Docker Image映像,你可以浏览Docker Hub来查找这些Image映像. 定位Whalesay 映像 打开你的浏览器,浏览Docker Hub: Docker Hub包含 ...
- Docker Hub
目前 Docker 官方维护了一个公共仓库 Docker Hub,其中已经包括了超过 15,000 的镜像.大部分需求,都可以通过在 Docker Hub 中直接下载镜像来实现. 登录 可以通过执行 ...
- 构建自定义docker镜像,上传至docker hub
docker 优势 (外部参考) Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后 发布到任何流行的Linux机器上,便可以实现虚拟化.Docker改变了虚拟化的方 式,使 ...
- docker hub加速访问设置
前言:docker是国外的,虽然有个版本开源免费,但是其docker hub还是在国外,刚刚安装后,拉镜像就会发现,连接请求超时,中断服务,这是因为防火墙的问题,所以要将源指向国内的知名docker ...
随机推荐
- css font-face自定义字体
font-face:自定义字体 1.找到一个字体文件 2.放入新建的的font的文件夹内: 3.在样式里面以下内容 注释:aa是字体名 <style> @font-face{ fo ...
- Axis2与Web项目整合
一.说明: 上一篇介绍了通过使用Axis2来发布和调用WebService,但是是把WebService发布在Axis2提供的项目中,如果我们需要在自己的Web项目中来使用Axis2发布WebServ ...
- vim插件开发初步
[vim插件开发初步] 将如下代码存在helloworld.vim, 放在~/.vim/plugin目录下,插件即可生效.:w保存代码后, 用:source命令执行后,也可以使用Helloworld命 ...
- Codeforces 100548F - Color (组合数+容斥)
题目链接:http://codeforces.com/gym/100548/attachments 有n个物品 m种颜色,要求你只用k种颜色,且相邻物品的颜色不能相同,问你有多少种方案. 从m种颜色选 ...
- 使用dbcp : BasicDataSource
需要 commons-dbcp2 com.oracle.ojdbc6 <dependency> <groupId>org.apache.commons</groupId& ...
- 手把手教你玩转SOCKET模型之重叠I/O篇(下)
四. 实现重叠模型的步骤 作 了这么多的准备工作,费了这么多的笔墨,我们终于可以开始着手编码了.其实慢慢的你就会明白,要想透析重叠结构的内部原理也许是要费点功夫,但是只是学会 如何来使用它,却 ...
- Web Service实现分布式服务的基本原理
简单的说, 就是客户端根据WSDL 生成 SOAP 的请求消息, 通过 HTTP 传输方式(也可以是其它传输方式, 如 FTP 或STMP 等,目前 HTTP 传输方式已经成为 J2EE Web Se ...
- 编译安装-Percona 5.6
CentOS 6.4编译安装Percona 5.6.16 Percona 下载地址:http://www.percona.com 一.卸载原有MySQL检查是否安装有MySQL Server: rpm ...
- [Mac]Mac Xcode 删除已经下载好的模拟器版本
Delete simulator refences for xCode: Delete the particular simulator runtime references (*.simruntim ...
- java去掉jsp标签内容的方法
//去掉内容的标签 public static String removeTag(String count){ try { int tagCheck=-1; do { i ...