Docker基础之十: 存储镜像到Docker Hub

简介: 存储镜像到Docker Hub 到目前为止,我们已经学习了docker的基本用法,包括拉取镜像,运行容器,编译镜像文件等等。接下来,我们将学习如何通过docker hub来简化你的操作,并提高你的工作效率。 Docker Hub是Docker的主仓库,由Docker公司进行维护。这个仓库里面包含了

存储镜像到Docker Hub

对Docker感兴趣的朋友可以加我的微信ghostcloud2016,然后我把你加到我们的一个Docker爱好者群组里面。

到目前为止,我们已经学习了docker的基本用法,包括拉取镜像,运行容器,编译镜像文件等等。接下来,我们将学习如何通过docker hub来简化你的操作,并提高你的工作效率。 Docker Hub是Docker的主仓库,由Docker公司进行维护。这个仓库里面包含了系统的官方镜像,同时提供简单的用户认证信息,以及其他的附属功能。默认情况下,这个仓库是免费的,但是你的所有镜像也是公开的。跟github类似,如果你需要一个私有的仓库,那么需要付费。

1 Docker Hub相关的命令

Docker 本身和仓库相关的命令包括docker search, pull, login, push。下面我们将详细介绍这些命令的用法。

1.1 用户创建和登录

如果你没有Docker Hub账号,你可以从https://hub.docker.com进行注册。注册成功后,通过下面命令进行登录:

$docker login

这个命令将提示你输入用户名和密码。你的用户信息将被纪录在~/.docker/config.json文件中。

1.2 搜索镜像

你可以在Docker Hub主页上搜索镜像,不过我一般喜欢在命令行中进行搜索。

$ docker search centos
NAME           DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
centos         The official build of CentOS                    1223      [OK]
tianon/centos  CentOS 5 and 6, created using rinse instea...   33
...

上面查找出了两个镜像,第一个是centos,这个是官方镜像,没有任何前缀; tianon/centos 是tianon用户自己的centos,从这而你也可以看出,用户的镜像默认是公开的。 当你找到镜像以后,你可以执行docker pull :

$ docker pull centos
Using default tag: latest
latest: Pulling from library/centos
f1b10cd84249: Pull complete
c852f6d61e65: Pull complete
7322fbe74aa5: Pull complete
Digest: sha256:90305c9112250c7e3746425477f1c4ef112b03b4abe78c612e092037bfecc3b7
Status: Downloaded newer image for centos:latest

执行完毕后,centos镜像就被拉取到本地了。

1.3 下载指定版本的镜像

使用docker pull centos 等同于docker pull centos:latest。如果想下载其他版本的镜像,可以指定相应的tag,比如:docker pull centos:centos5。

2 提交镜像到Docker Hub

每个人都可以将公共的镜像提交到Docker Hub Registry,只是这个是公共的仓库。

2.1 推送镜像到Docker Hub

如果你要推送镜像到Docker Hub,你需要一个命名的Image。其格式如下:

$ docker push yourname/newimage

2.2 Tag镜像

如果你的镜像是自己构建的,你需要用docker tag来进行标记后,再进行提交。如果你想提交容器,就需要先docker commit成镜像,再提交。

root@gctest:~# docker images
REPOSITORY                 TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ghostcloud.cn:5005/gcali   2.0.7               e1ccd7f9bf75        22 minutes ago      219.6 MB
ubuntu                     vivid               d893c6708298        2 weeks ago         131.3 MB
ubuntu                     trusty              e9ae3c220b23        4 weeks ago         187.9 MB
ubuntu                     latest              e9ae3c220b23        4 weeks ago         187.9 MB
ubuntu                     precise             2a7a952931ec        4 weeks ago         136.1 MB
ubuntu                     wily                5eb72b199374        6 weeks ago         131.4 MB
root@gctest:~# docker tag ubuntu:latest shev/ubuntu:latest
root@gctest:~# docker images
REPOSITORY                 TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ghostcloud.cn:5005/gcali   2.0.7               e1ccd7f9bf75        23 minutes ago      219.6 MB
ubuntu                     vivid               d893c6708298        2 weeks ago         131.3 MB
shev/ubuntu                latest              e9ae3c220b23        4 weeks ago         187.9 MB
ubuntu                     latest              e9ae3c220b23        4 weeks ago         187.9 MB
ubuntu                     trusty              e9ae3c220b23        4 weeks ago         187.9 MB
ubuntu                     precise             2a7a952931ec        4 weeks ago         136.1 MB
ubuntu                     wily                5eb72b199374        6 weeks ago         131.4 MB
目录
相关文章
|
1天前
|
Ubuntu NoSQL 关系型数据库
《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库
《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库
50 28
|
1月前
|
Docker 容器
将本地的应用程序打包成Docker镜像
将本地的应用程序打包成Docker镜像
|
20天前
|
NoSQL PHP MongoDB
docker push推送自己搭建的镜像
本文详细介绍了如何搭建和复盘两个Web安全挑战环境:人力资源管理系统和邮件管理系统。首先,通过Docker搭建MongoDB和PHP环境,模拟人力资源管理系统的漏洞,包括nosql注入和文件写入等。接着,复盘了如何利用这些漏洞获取flag。邮件管理系统部分,通过目录遍历、文件恢复和字符串比较等技术,逐步绕过验证并最终获取flag。文章提供了详细的步骤和代码示例,适合安全研究人员学习和实践。
44 3
docker push推送自己搭建的镜像
|
24天前
|
Docker 容器
|
1月前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
60 9
|
1月前
|
存储 缓存 运维
Docker镜像采用分层存储,每层代表镜像的一部分,如基础组件或应用依赖,多层叠加构成完整镜像
Docker镜像采用分层存储,每层代表镜像的一部分,如基础组件或应用依赖,多层叠加构成完整镜像。此机制减少存储占用,提高构建和传输效率。Docker还通过缓存机制提升构建和运行效率,减少重复工作。文章深入解析了Docker镜像分层存储与缓存机制,包括具体实现、管理优化及实际应用案例,帮助读者全面理解其优势与挑战。
51 4
|
2月前
|
缓存 JavaScript 安全
深入理解Docker镜像构建过程
深入理解Docker镜像构建过程
78 0
|
5月前
|
存储 安全 Ubuntu
Docker 镜像与 Docker 容器的区别
【8月更文挑战第27天】
405 5
|
5月前
|
存储 Ubuntu 应用服务中间件
在Docker中,怎么快速查看本地的镜像和容器?
在Docker中,怎么快速查看本地的镜像和容器?
|
6月前
|
Shell Linux Docker
docker常用命令大全(基础、镜像、容器、数据卷)
这些命令仅仅是 Docker 命令行工具的冰山一角,但对于日常操作来说已经非常全面。通过熟练地使用这些基础命令,用户可以有效地管理 Docker 的镜像、容器、数据卷和网络。随着用户对 Docker 的深入使用,更高级的命令和选项将会变得必需,但上面列出的命令已经为用户提供了一个坚实的起点。对于初学者来说,理解和掌握这些常用命令是深入学习 Docker 的基础。
542 5
docker常用命令大全(基础、镜像、容器、数据卷)

热门文章

最新文章