操作Docker容器

容器是独立运行的一个或一组应用,以及它们的运行态环境。
对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用。

如何管理一个容器?

启动容器

启动容器有两种方式:

  • 基于镜像新建一个容器并启动
  • 将在终止状态(stopped)的容器重新启动

1、新建并启动

docker启动容器报错139 docker容器启动后直接exited_后台运行


docker启动容器报错139 docker容器启动后直接exited_Docker_02

docker启动容器报错139 docker容器启动后直接exited_Docker_03

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_04

2、启动已终止容器

docker启动容器报错139 docker容器启动后直接exited_Docker_05

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_06

后台运行(守护态运行)

让 Docker 在后台运行而不是直接把执行命令的结果输出在当前宿主机下,可以通过添加 -d 参数实现。

docker启动容器报错139 docker容器启动后直接exited_docker_07

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_08


通过 docker container logs 命令获取容器的输出信息。

终止容器

docker启动容器报错139 docker容器启动后直接exited_Docker_09


docker启动容器报错139 docker容器启动后直接exited_后台运行_10

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_11


docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_12

进入容器

使用 -d 参数时,容器启动后会进入后台。

docker启动容器报错139 docker容器启动后直接exited_后台运行_13

1、attach命令

docker启动容器报错139 docker容器启动后直接exited_docker_14


注意: 如果从这个 stdin 中 exit,会导致容器的停止。

2、exec命令

docker exec 后边可以跟多个参数,这里主要说明 -i -t 参数。

docker启动容器报错139 docker容器启动后直接exited_后台运行_15

docker启动容器报错139 docker容器启动后直接exited_docker_16


注意:如果从这个 stdin 中 exit,不会导致容器的停止。这就是为什么推荐大家使用 docker exec 的原因。

导出和导入容器

1、导出容器

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_17


docker启动容器报错139 docker容器启动后直接exited_后台运行_18


这样将导出容器快照到本地文件。2、导入容器快照

docker启动容器报错139 docker容器启动后直接exited_后台运行_19


docker启动容器报错139 docker容器启动后直接exited_docker_20

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_21

docker启动容器报错139 docker容器启动后直接exited_后台运行_22


docker启动容器报错139 docker容器启动后直接exited_Docker_23


注:用户既可以使用 docker load 来导入镜像存储文件到本地镜像库,也可以使用 docker import 来导入一个容器快照到本地镜像库。这两者的区别在于容器快照文件将丢弃所有的历史记录和元数据信息(即仅保存容器当时的快照状态),而镜像存储文件将保存完整记录,体积也要大。此外,从容器快照文件导入时可以重新指定标签等元数据信息。

删除容器

docker启动容器报错139 docker容器启动后直接exited_Docker_24


docker启动容器报错139 docker容器启动后直接exited_docker_25

docker启动容器报错139 docker容器启动后直接exited_后台运行_26

docker启动容器报错139 docker容器启动后直接exited_docker启动容器报错139_27