Docker容器的操作

1. 容器的创建和启动

新创建的容器默认处在停止状态,不运行任何程序,需要在其中发起一个进程来启动容器,这个进程是该容器的唯一进程,所以当该进程结束的时候,容器也会完全停止。停止的容器可以重新启动并保留原来的修改。

创建容器的命令格式: docker create  [ 选项 ]   镜像  运行的程序

启动停止状态的容器命令格式: docker start   容器 ID/ 名称

终止运行容器的命令格式: docker stop 容器的 ID/ 名称

下图是创建一个容器,并启动这个容器:

如果想创建的同时启动容器,可以直接执行 “docker run”  命令,这个命令等同于先执行docker create ”命令,然后再执行“ docker start ”命令。需要注意的是只要后面的命令运行结束,容器就会停止。

当利用 docker run 来创建容器时, Docker 会检查本地是否存在指定的镜像,当镜像不存在时,会从公共仓库下载,然后利用镜像创建并启动一个容器,分配一个文件系统给容器,在只读的镜像层外面挂载一层可读写层,从宿主主机配置的网桥接口中桥接一个虚拟机接口到容器中,并分配一个地址池中的 IP 给容器,执行用户指定的应用程序,执行完毕后,容器被终止运行,这就是 docker run 执行的过程。

2. 容器的进入

需要进入容器进行相应的操作是,使用 docker exec 命令进行运行着的容器。命令格式为:

docker exec -it 容器 ID/ 名称   /bin/bash

其中, -i 表示让容器的输入保持打开, -t 表示让 Docker 分配一个伪终端。

进入和退出容器的操作如图:

3. 容器的导出和导入

可以根据需要,将任何一个 Docker 容器从一个台机器迁移到另一台机器上。在迁移的过程中,首先需要将已经创建好的容器导出为文件,这个操作可以使用 docker export 命令。无论这个容器是处在运行状态还是处在停止状态都可以导出。导出之后可将导出文件传输到其他机器,通过相应的导入命令实现容器的迁移。

导出容器的命令格式: docker export 容器 ID/ 名称 > 文件名

导出的文件从 A 机器拷贝到 B 机器,之后用 docker import 命令导入,成为镜像。

导入容器的命令格式: cat 文件名 |docker import – 生成的镜像名称 : 标签

4. 删除容器

使用 docker rm 命令将一个已经处于终止状态的容器删除。

命令格式: docker rm 容器 ID/ 名称

注:如果要删除一个正在运行的容器,需要添加 -f 选项强制删除。