
上QQ阅读APP看书,第一时间看更新
1.6.4 docker命令示例
这里以常用的docker run命令为例进行简单的示范。下面的操作会运行一个ubuntu容器,该容器中运行/bin/bash(shell界面),用户可以在本地命令行窗口与容器本身之间进行交互,这是由-i和-t选项所指定的。
[root@host-a ~]# docker run -i -t ubuntu /bin/bash Unable to find image 'ubuntu:latest' locally latest: Pulling from library/ubuntu 898c46f3b1a1: Pull complete 63366dfa0a50: Pull complete 041d4cd74a92: Pull complete 6e1bee0f8701: Pull complete Digest: sha256:017eef0b616011647b269b5c65826e2e2ebddbe5d1f8c1e56b3599fb14fabec8 Status: Downloaded newer image for ubuntu:latest root@fedcaa37a16e:/
这个命令运行时会执行以下操作(假设使用默认的Docker注册配置)。
(1)如果本地没有ubuntu镜像,Docker会从所配置的注册中心拉取这个镜像,相当于手动运行了docker pull ubuntu命令。
(2)Docker创建了一个新容器,相当于手动运行docker container create命令。
(3)Docker给容器分配一块可读写的文件系统作为最后一层,以便正在运行的容器在Docker主机上的本地文件系统中创建或修改文件和目录。
(4)Docker创建一个网络接口将容器连接到默认网络(因为没有指定任何网络选项),并为容器分配IP地址。默认情况下,容器可以通过主机的网络连接访问外部网络。
(5)Docker启动容器并且执行/bin/bash命令。因为容器交互式运行,被连接到用户的终端窗口,用户可以使用键盘向容器提供输入,输出结果显示到终端。
当用户输入exit命令来结束/bin/bash命令时,容器也会停止,但不会被删除。可以再次启动容器,或者删除容器。
root@fedcaa37a16e:/# exit exit [root@host-a ~]#