运行容器
使用run
命令启动容器。
下面的命令输出一个 “Hello World”,之后终止容器:
$ sudo docker run ubuntu:14.04 /bin/echo 'Hello world'
下面的命令则启动一个 bash 终端,允许用户进行交互:
$ sudo docker run -i -t ubuntu /bin/bash
这句命令的解释:
- 告诉Docker使用
docker run
命令。 - 参数
-i
标志容器中SRDIN是开启的。-t
标志告诉doncker为要创建的的容器分配一个伪tty终端。这样新创建的容器才能提高一个交互式shell。 - 这里使用ubuntu镜像。ubuntu镜像是一个常备镜像,也成为基础(base)镜像。也可以使用其他镜像,如debian、centos、fedora。
- 指定镜像时,Docker会检查本地是否存在ubuntu镜像。如果本地没有该镜像的话,就好链接官方维护的Docker Hub Registy,查看Docker Hub中是否有该镜像,有的话就下载下来。
现在进入到容器中,这是一个完整的Ubuntu系统。
在交互模式下,用户可以通过所创建的终端来输入命令,例如:
root@49aefbbb440a:/# pwd
root@49aefbbb440a:/# ls
容器的一些操作
查看/etc/hosts
文件:
root@49aefbbb440a:/# cat /etc/hosts
查看网络配置:
root@49aefbbb440a:/# ip a
容器的核心为所执行的应用程序,所需要的资源都是应用程序运行所必需的。除此之外,并没有其它的资源。可以在伪终端中利用 ps
或 top
来查看进程信息:
root@49aefbbb440a:/# ps -aux
安装vim:
root@49aefbbb440a:/# apt-get update && apt-get install vim
容器重命名
要退出容器进行重命名
错误做法:
root@49aefbbb440a:/# sudo docker run --name ao_ct -i -t ubuntu /bin/bash
sudo: docker: command not found
正确做法:
root@49aefbbb440a:/# exit
exit
docker@boot2docker:~$ sudo docker run --name 名字 -i -t ubuntu /bin/bash
查看当前系统中容器列表
$ sudo docker ps -a
重启已经停止的容器
可以start + 容器名
$ sudo docker start ao_ct
或start + 容器ID
$ sudo docker start b1ec5fb7f499
列出本地镜像
使用docker images
显示本地已有的镜像。
$ sudo docker images
在列出信息中,可以看到几个字段信息“
- 来自于哪个仓库,比如 ubuntu
- 镜像的标记,比如 14.04
- 它的
ID
号(唯一) - 创建时间
- 镜像大小
其中镜像的 ID
唯一标识了镜像,注意到 ubuntu:14.04
和 ubuntu:trusty
具有相同的镜像 ID
,说明它们实际上是同一镜像。
TAG
信息用来标记来自同一个仓库的不同镜像。例如 ubuntu
仓库中有多个镜像,通过 TAG
信息来区分发行版本,例如12.04
、12.10
、13.04
、14.04
等。
下面的命令指定使用镜像 ubuntu:14.04
来启动一个容器。
$ sudo docker run -t -i ubuntu:14.04 /bin/bash
如果不指定具体的标记,则默认使用 latest
标记信息。
【本人的学习笔记,主要是对《我的第一本Docker书》、《Docker —— 从入门到实践》的学习记录,并结合其他各种资源的学习。我使用的是windows 7, docker 1.3.2。】
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。