docker 修改国内源怎么修改拉取源从指定的国内仓库拉取镜像

在之前的介绍中,我们知道镜像是 Docker 的三大组件之一。
Docker 运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker 会从镜像仓库下载(默认是 Docker Hub 公共注册服务器中的仓库)。
本章将介绍更多关于镜像的内容,包括:
从仓库获取镜像;
管理本地主机上的镜像;
介绍镜像实现的基本原理。
可以使用 docker pull 命令来从仓库获取所需要的镜像。
下面的例子将从 Docker Hub 仓库下载一个 Ubuntu 12.04 操作系统的镜像。
$ sudo docker pull ubuntu:12.04
Pulling repository ubuntu
ab8e2728644c: Pulling dependent layers
c5a: Download complete
5f0ffaa9455e: Download complete
abe: Download complete
c30: Download complete
ffdaafd1ca50: Download complete
d047ae21eeaf: Download complete
下载过程中,会输出获取镜像的每一层信息。
该命令实际上相当于 $ sudo docker pull registry./ubuntu:12.04 命令,即从注册服务器 registry. 中的 ubuntu 仓库来下载标记为 12.04 的镜像。
有时候官方仓库注册服务器下载较慢,可以从其他仓库下载。
从其它仓库下载时需要指定完整的仓库注册服务器地址。例如
$ sudo docker pull :5000/ubuntu:12.04
Pulling :5000/ubuntu
ab8e2728644c: Pulling dependent layers
c5a: Download complete
5f0ffaa9455e: Download complete
abe: Download complete
c30: Download complete
ffdaafd1ca50: Download complete
d047ae21eeaf: Download complete
完成后,即可随时使用该镜像了,例如创建一个容器,让其中运行 bash 应用。
$ sudo docker run -t -i ubuntu:12.04 /bin/bash
root@fe7fc4bd8fc9:/#Docker:镜像操作和容器操作_服务器应用_Linux公社-Linux系统门户网站
你好,游客
Docker:镜像操作和容器操作
来源:Linux社区&
作者:fengzheng
列出镜像:
$ sudo docker images
REPOSITORY
VIRTUAL SIZE
hello-world
0a6ba66e537a
4 weeks ago
获取镜像:
docker系统镜像可以从任意一个可访问的镜像仓库获取,默认从docker hub上获取,如果下载太慢的话可以考虑国内的镜像仓库,例如或者下载。
docker获取镜像用docker pull命令,如下:
#从docker官方仓库下载12.04版本镜像
sudo docker pull ubuntu:12.04
从dl.dockerpool获取镜像
sudo docker pull :5000/ubuntu:12.04
注意:从第三方镜像仓库获取镜像可能出现https证书问题,例如:
Error response from daemon: unable to ping registry endpoint https://:5000/v0/
v2 ping attempt failed with error: Get https://:5000/v2/: tls: oversized record received with length 28012
v1 ping attempt failed with error: Get https://:5000/v1/_ping: tls: oversized record received with length 28012
解决方案:
进入/etc/default目录,找到docker文件,在其中添加如下代码:
DOCKER_OPTS="--insecure-registry :5000"
&之后重启docker服务:
sudo service docker restart
&镜像保存与导入
保存的文件以.tar方式存在
保存方式一:save
save命令会将镜像完整保存,包括历史版本和元数据信息,所以文件可能比较大。
-o: 表示以文件的形式导出
紧跟在-o后面的是导出文件保存的位置
最后是镜像(仓库:TAG,或者镜像id)sudo docker save -o /home/fengzheng/dockerImages/mmm.tar ubuntu:12.04同样用的是Ubuntu,在一台机器上正常,在另外一台机器上报如下错误,还没有找到原因,希望有知道原因的朋友在评论里指出,不胜感激。
 Error response from daemon: open /var/lib/docker/aufs/mnt/6735efc907c472d48eab09ac22ec4adc6/.wh..wh.plnk/: operation not permitted
保存方式二:export
确切的说,export其实是容器的保存,只把镜像当前的状态保存下来,没有历史版本等信息,所有文件比较小
-o:表示以文件形式导出 紧跟在-o后面的是导出文件保存位置
最后是容器的id 容器通过sudo docker ps -a 查看,下一篇会介绍docker export -o ubuntu1204.tar d0751467dcad
镜像导入:
docker load
sudo docker load & /home/fengzheng/Docker/ubtuntu12.04.tar
删除镜像前,要先把依赖于这个镜像的容器删除(sudo docker rm 容器id)
删除镜像的命令是docker rmi [镜像id]
sudo docker rmi 0ac5b09d8536
Deleted: 0ac5b09dc10e39bfda2e94781e07ebe47a206ea1c20f3f672f258a
Deleted: efbb515ae632b8ba4b8536c1eadcffcadbc8c2cb6f8f2ab82013
Deleted: 5e59abd951cbb58af4ce5ee1c
Deleted: be10ee9bae39bbeed25b086e0c90a907a29eef2af41b34
提交修改的容器,并生成新的镜像
当对现有容器进行修改后,例如安装了某些软件、修改了配置等,要保存当前修改并生成新的镜像,使用docker commit命令 ,这个命令和git的commit命令很像
# -a:修改者信息 -m:注释、说明
紧跟着当前操作的容器id
最后是要生成的新的镜像名称sudo docker commit -a "fengzheng" -m "this is a commit message" ae2a59b86dd9 fengzheng/ubuntu
ae58e92ba42a5cd31b44b51a71c654bb8f823c10
查看镜像的信息:docker&inspect [镜像名称或者镜像id]
sudo docker inspect fengzheng/ubuntu
sudo docker inspect
新建并启动容器
根据一个镜像可以启动多个容器,启动容器的命令是docker run
sudo docker run -t -i ubuntu:12.04& /bin/bash
sudo docker run -t -i& 镜像id
常用参数解释:
-t 表示让Docker分配一个伪终端并绑定到容器的标准输入上
-i 表示让容器的标准输入保持打开
-d 表示以守护方式打开(即非交互模式,后台运行)
还有一个比较常用的,做网络配置时端口映射的参数-p,例如下面的命令将宿主机的3222端口映射到容器的22端口、将宿主机的3280端口映射到容器的22端口,用法如下:
#-p 设置端口映射 -p 宿主机端口:容器端口& &br&sudo docker run -t -i -p 3222:22 -p e5b6b3ccc1 /bin/bash
查看容器列表
#查看已启动的容器
sudo docker ps
#查看所有容器
sudo docker ps -a  
启动一个已存在的容器  
#后面的id为容器ID&br&sudo docker start 8d98fd43acd4
进入容器  
sudo docker attach 8d98fd43acd4
sudo docker stop 8d98fd43acd4
容器必须是停止状态的才可以删除
sudo docker rm 8d98fd43acd4
#将容器id为e 的导出到当前目录下 名称为ubuntu.tar
sudo docker export e & ubuntu.tar
导入容器  
更多Docker相关教程见以下内容:
Docker安装应用( 6.5_x64) &
Ubuntu 14.04安装Docker& &
Ubuntu使用VNC运行基于Docker的桌面系统&
阿里云CentOS 6.5 模板上安装 Docker &
Ubuntu 15.04下安装Docker& &
在Ubuntu Trusty 14.04 (LTS) (64-bit)安装Docker &
在 Ubuntu 15.04 上如何安装Docker及基本用法
Docker 的详细介绍:Docker 的下载地址:&
本文永久更新链接地址:
相关资讯 & & &
& (04月10日)
& (03月10日)
& (05月10日)
& (04月05日)
& (03月10日)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款Docker第三章(docker获取镜像)
Docker第三章(docker获取镜像)
编辑日期: 字体:
一、列出镜像
[root@Tshare365-docker&~]#&docker&images
REPOSITORY&&&&&&&&&&TAG&&&&&&&&&&&&&&&&&IMAGE&ID&&&&&&&&&&&&CREATED&&&&&&&&&&&&&VIRTUAL&SIZE
ubuntu&&&&&&&&&&&&&&latest&&&&&&&&&&&&&&d55e68e6cc9c&&&&&&&&6&days&ago&&&&&&&&&&187.9&MB
[root@Tshare365-docker&~]#
我们看到我们已经获得的了一个镜像列表,这个镜像是从哪里来的呢,这是我们在上一章中使用 run命令下载下来的
镜像下载之后保存在Docker宿主机的/var/lib/docker/ 目录下
二、拉取镜像
2.1、拉取ubuntu操作系统的各个版本的所有镜像
docker&&pull&ubunut
为了区分同一个仓库中不同的镜像,Docker提供了一种称为标签(tag)的功能,每个镜像在列出来的时候就带有一个标签。
2.2、通过tag指定拉取某个版本的镜像
例如拉取Ubuntu12.04版本,如果不指定tag默认拉取的是latest也就是最新版本
docker&run&-t&-i&--name&Tshare365_ubuntu&ubuntu:12.04&/bin/bash
用 run 命令从镜像启动一个容器的时候,如果该镜像不在本地,r会先从Docker Hub下载该镜像
三、查找镜像&
通过 search 命令在&Docker Hub上查找zabbix 公共的可用镜像
[root@Tshare365-docker&~]#&docker&search&zabbix
NAME&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&DESCRIPTION&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&STARS&&&&&OFFICIAL&&&AUTOMATED
berngp/docker-zabbix&&&&&&&&&&&&&&&&&&Runs&Zabbix&Server&and&Zabbix&Web&UI&on&a&...&&&48&&&&&&&&&&&&&&&&&&&[OK]
zabbix/zabbix-server-2.4&&&&&&&&&&&&&&Zabbix&Server&and&Zabbix&Web&UI&(PHP-FPM,&...&&&33&&&&&&&&&&&&&&&&&&&[OK]
bhuisgen/docker-zabbix-coreos&&&&&&&&&Zabbix&agent&for&CoreOS&server&&&&&&&&&&&&&&&&&&8&&&&&&&&&&&&&&&&&&&&[OK]
zabbix/zabbix-server-3.0&&&&&&&&&&&&&&NOT&FOR&PRODUCTION&-&Zabbix&3.0&-&only&dev...&&&4&&&&&&&&&&&&&&&&&&&&[OK]
million12/zabbix-server&&&&&&&&&&&&&&&Zabbix&Server&(SMTP&auth,&Push&Notificatio...&&&4&&&&&&&&&&&&&&&&&&&&[OK]
dentavita/zabbix&&&&&&&&&&&&&&&&&&&&&&Zabbix&server&on&Centos&6&managed&by&Monit&&&&&&3&&&&&&&&&&&&&&&&&&&&[OK]
zabbix/zabbix-db-mariadb&&&&&&&&&&&&&&MariaDB&container&optimized&for&Zabbix&-&c...&&&3&&&&&&&&&&&&&&&&&&&&[OK]
million12/zabbix-agent&&&&&&&&&&&&&&&&Zabbix&Agent&-&running&in&foreground.&&&&&&&&&&&2&&&&&&&&&&&&&&&&&&&&[OK]
snaptv/zabbix-server&&&&&&&&&&&&&&&&&&Zabbix&server.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
keuz/zabbix&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
miko2u/zabbix&&&&&&&&&&&&&&&&&&&&&&&&&zabbix-server&and&tools&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
dockerizedrupal/zabbix-frontend-php&&&docker-zabbix-frontend-php&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
romcheck/docker-zabbix-trunk&&&&&&&&&&Docker&image&for&trunk&version&of&zabbix-s...&&&0&&&&&&&&&&&&&&&&&&&&[OK]
snaptv/zabbix-frontend&&&&&&&&&&&&&&&&Zabbix&frontend.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
cosmicq/docker-zabbix&&&&&&&&&&&&&&&&&A&modified&berngp/docker-zabbix&implementa...&&&0&&&&&&&&&&&&&&&&&&&&[OK]
khipu/zabbix-agent&&&&&&&&&&&&&&&&&&&&zabbix&agent&with&foreground&patch&running...&&&0&&&&&&&&&&&&&&&&&&&&[OK]
subsident/zabbix-frontend&&&&&&&&&&&&&Apache&+&PHP&+&Zabbix&Web&Frontend&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
subsident/zabbix&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
visol/zabbix&&&&&&&&&&&&&&&&&&&&&&&&&&Zabbix&Server&2.4&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
dockerizedrupal/zabbix-server&&&&&&&&&docker-zabbix-server&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
enderson/zabbix-server&&&&&&&&&&&&&&&&Dockerized&Zabbix&Server&daemon&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
khipu/zabbix-server&&&&&&&&&&&&&&&&&&&zabbix&server&and&webif&(s6,&confd,&postgres)&&&0&&&&&&&&&&&&&&&&&&&&[OK]
eit8ei8n/zabbix-server&&&&&&&&&&&&&&&&Zabbix&server&and&UI&on&Alpine&Linux&(size...&&&0&&&&&&&&&&&&&&&&&&&&[OK]
levkov/zabbix&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
xeor/zabbix&&&&&&&&&&&&&&&&&&&&&&&&&&&zabbix&+&postgresql&&&&&&&&&&&&&&&&&&&&&&&&&&&&&0&&&&&&&&&&&&&&&&&&&&[OK]
[root@Tshare365-docker&~]#
返回的信息有
用户评价(stars) ——–镜像的受欢迎程度
是否官方(Official)
自动构建(Automated)
从上面的结果中拉取指定的镜像
[root@Tshare365-docker&~]#&docker&pull&zabbix/zabbix-server-2.4
本章docker内容就到此结束了,如果你对docker感兴趣,请持续关注谢谢!
本文固定链接:
转载请注明:
作者:tshare365
这个作者貌似有点懒,什么都没有留下。
您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击
您可能还会对这些文章感兴趣!暂没有新消息哦~
&获取和推送镜像
获取和推送镜像
开通极客学院VIP会员,免费观看全部会员课程
最低 21.6 元 / 月
VIP会员尊享特权
观看全部会员课程
720P高清视频下载
已有会员账号,请
视频太卡?试试切换线路
本课时介绍如何查看和删除Docker镜像
本课时介绍如何从Docker Hub上查找、拉取(pull)镜像,如何使用第三方Regisitry Mirror 加速镜像的下载,以及如何将自己的镜像推送(push)到Docker Hub上
本课时介绍Docker镜像构建的两种方式:使用commit提交镜像,以及使用Dockerfile文件构建镜像。
只有成为VIP会员才能提问&回复,快吧!如果你还没有账号你可以一个账号。
添加新技术问题
课程 [获取和推送镜像]
中已存在问题
添加新技术问题
问题描述越详细,被解答的速度越快
有新回答时请邮件提醒我
着急,拜托快点
不急,慢慢解决
关联课程 [获取和推送镜像]
服务热线:400-678-8266

我要回帖

更多关于 docker 修改源 的文章

 

随机推荐