使用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 ...
随机推荐
- Using Boost Libraries in Windows Store and Phone Applications
Using Boost Libraries in Windows Store and Phone Applications RATE THIS Steven Gates 18 Jul 2014 5:3 ...
- <转载>linux下内存泄露查找、BUG调试
先收藏着,抽空好好看看:http://www.ibm.com/developerworks/cn/linux/l-pow-debug/ 简介 调试程序有很多方法,例如向屏幕上打印消息,使用调试器,或者 ...
- LC串联谐振回路
- linux which 查看可执行文件的位置
我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件的位置. whereis 查看文件的位置. ...
- class bool
class bool(int): """ bool(x) -> bool Returns True when the argument x is true, Fal ...
- Codeforces 707 E. Garlands (二维树状数组)
题目链接:http://codeforces.com/problemset/problem/707/E 给你nxm的网格,有k条链,每条链上有len个节点,每个节点有一个值. 有q个操作,操作ask问 ...
- HDU1151Air Raid(二分图的最大匹配)
题目大意: 有一个城镇,它的所有街道都是单行的,并且每条街道都是和两个路口相连.同时已知街道不会形成回路. 你的任务是编写程序求最小数量的伞兵,这些伞兵可以访问(visit)所有的路口.
- 实现jsp网站添加到收藏夹
var ctrl = (navigator.userAgent.toLowerCase()).indexOf('mac') != -1 ? 'Command/Cmd': 'CTRL'; ...
- eclipse下创建maven工程
http://blog.chinaunix.net/uid-26959955-id-3248053.html
- 结构类模式(二):桥接(Bridge)
定义 将抽象化(Abstraction)与实现化(Implementation)脱耦,使得二者可以独立地变化. 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维 ...