dockerstudy_第1页
dockerstudy_第2页
dockerstudy_第3页
dockerstudy_第4页
dockerstudy_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Docher安装 $ sudo yum install docker检测是否安装成功# 查看docker版本$ docker version# 显示docker系统的信息$docker info当 Docker 安装完成之后,你需要启动 docker 进程。$ sudo service docker start如果我们希望 Docker 默认开机启动,如下操作:$ sudo chkconfig docker on现在,我们来验证 Docker 是否正常工作。首先,我们需要下载最新的 centos 镜像。$ sudo docker pull centos下一步,我们运行下边的

2、命令来查看镜像,确认镜像是否存在:$ sudo docker images centos 运行简单的脚本来测试镜像:$ sudo docker run -i -t centos /bin/bash在容器中运行"echo"命令,输出"hello word"$ docker run image_name echo "hello word"如果正常运行,可以用命令行操作这个新系统,输入 exit 来退出。查看容器(ps)容器是镜像的实例,先声明(描述)镜像,再创建容器,所以容器可以有多个。列出当前所有正在运行的conta

3、iner$ docker ps列出所有的container$ docker ps -a列出最近一次启动的container$ docker ps -l删除所有容器$ docker rm $(docker ps -a -q)删除单个容器$ docker rm Name/ID停止、启动、杀死一个容器$ docker stop Name/ID$ docker start Name/ID$ docker kill Name/ID从一个容器中取日志$ docker logs Name/ID列出一个容器里面被改变的文件或者目录,list列表会显示出三种事件,A 增加的,D 删除的,C 被改变的$ dock

4、er diff Name/ID显示一个运行的容器里面的进程信息$ docker top Name/ID从容器里面拷贝文件/目录到本地一个路径$ docker cp Name:/container_path to_path$ docker cp ID:/container_path to_path重启一个正在运行的容器$ docker restart Name/ID附加到一个运行的容器上面; $ docker attach ID保存镜像到一个tar包;然后加载一个tar包格式的镜像;$ docker save centos > xx.tar使用scp将save.tar拷到机器b上,然后:

5、$ docker load < xx.tar 容器和镜像的区别现在我们使用 -i(交互式)和 -t(临时终端)参数运行一个容器,然后输入一些交互命令:ec2-userip-172-31-53-36 $ docker run -it ubuntu /bin/bashroot093a4d9d2e5c:/# echo hello docker > /message.txtroot093a4d9d2e5c:/# cat /message.txthello dockerroot093a4d9d2e5c:/# exitexit在上面那个容器内,我们创建了 /message.

6、txt 文件,现在我们尝试重新读取这个文件:ec2-userip-172-31-53-36 $ docker run -it ubuntu cat /message.txtcat: /message.txt: No such file or directory刚刚我们明明新建了这个文件,现在怎么没了?同时,运行 docker ps 列出容器,刚刚那个 093a4d9d2e5c容器到哪里去了?好吧,那么我们用 docker ps -a 命令列出所有容器,然后仔细观察一下:现在可以发现明确关系了:居然有多个不同的容器,一个执行了 /bin/bash,一个执行了 cat /mes

7、sage.txt。镜像更新并且提交更改在运行的容器内安装新软件后提交$ yum install wget我们需要记录下这个ID,后面有用这个命令输入之后,可以提交更新,需要用到之前保存的IDec2-userip-172-31-53-36 $ sudo docker commit -m="Added wget" -a="admin" a73eaf21bacd ouruser/centos:v2Ok,更新成功,我们重新来看下更新后的结果在主机上列出镜像列表$ sudo docker images查看镜像的其它版本$ docker search centos$

8、 docker pull layerworx/centos查看刚刚下载下来的镜像,我们会发现每个镜像都有一个TAG版本号、镜像源、镜像ID。$ sudo docker images默认下载最新的版本,那如果我们想下载它的其它版本可以用如下命令。$ docker pull ubuntu:13.10我们查看一下刚刚下载的其它版本的镜像我们看到有2个ubuntu,但是他们的TAG是不一样的,我们运行带标签镜像的不同容器$ sudo docker run -t -i ubuntu:13.10 /bin/bash如何删除一个镜像删除失败,我们还应该加上一些步骤停止所有的container,这样才能够删除

9、其中的images:$ docker stop $(docker ps -a -q)如果想要删除所有container的话再加一个指令:$ docker rm $(docker ps -a -q)删除images,通过image name来指定删除谁(但是建议常用ID来删除)$ docker rmi ubuntu:13.10删除成功,ubuntu13.10已经成功删除删除images,通过image的id来指定删除谁$ docker rmi f01c1b138488要删除全部image的话$ docker rmi $(docker images -q)想要删除untagged images,也

10、就是那些id为<None>的image的话可以用$ docker rmi $(docker images | grep "<none>" | awk "print $3")$ docker history image_nameDockerfilesCentOS 项目为开发者提供了大量的的示例镜像,作为开发模板或者学习 Docker 的实例。你可以在这里找到这些示例:创建一个测试$ mkdir hp$ cd hp$ touch Dockerfile$ vi Dockerfile$ docker build -t rain/ubunt

11、u:v2 .$ vi Dockerfile设置镜像标签在提交更改和构建之后为镜像来添加标签(tag)。 $ docker tag e1dee64f2ab8 rain/ubuntu:devel查看更改后的tagImage Digestsv2 或后续版本格式的镜像会有内容定位标示符叫做 digest$ docker images -digests | headREPOSITORY TAG DIGESTouruser/sinatra latest sha256:cbbf2f9a99b47当我们从 v2 版本的镜像仓库来推送或者拉取镜像的时候,pull 和 push 命令包含了镜像 digests 。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论