Docker 操作容器

容器

容器是独立运行的一个或一组应用,以及它们的运行态环境。

容器=镜像+读写层

Docker 在 1.13 版本中引进了新的管理命令(management commands),在 Docker 1.13+ 推荐使用 docker container 子命令来管理 Docker 容器。

启动容器

启动容器有两种方式:

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

新建并启动

所需要的命令主要为 docker run

下面的命令则启动一个 bash 终端,允许用户进行交互。

$ docker run -t -i ubuntu:14.04 /bin/bash
  • -t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上,
  • -i 则让容器的标准输入保持打开。

启动已终止容器

可以利用 docker start 命令,直接将一个已经终止的容器启动运行。

Docker 1.13+

在 Docker 1.13+ 版本中推荐使用 docker container 来管理容器。

$ docker container run ubuntu:17.10 /bin/echo 'Hello world'

$ docker container start

守护态运行

后台(background)运行

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

要获取容器的输出信息,可以通过 docker logs 命令。

Docker 1.13+

在 Docker 1.13+ 版本中推荐使用 docker container 来管理镜像。

$ docker container run -d

$ docker container ls

$ docker container logs

终止容器

可以使用 来终止一个运行中的容器。

终止状态的容器可以用 docker ps -a 命令看到。

处于终止状态的容器,可以通过 docker start 命令来重新启动。

此外, docker restart 命令会将一个运行态的容器终止,然后再重新启动它。

进入容器

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

某些时候需要进入容器进行操作,包括使用 docker attach 命令或 docker exec 命令,推荐大家使用 docker exec 命令,原因会在下面说明。

attach命令

docker attach 是 Docker 自带的命令。

$ docker ps

$ docker attach 243c

root@243c32535da7:/#

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

exec 命令

只用 -i 参数时,由于没有分配伪终端,界面没有我们熟悉的 Linux 命令提示符,但命令执 行结果仍然可以返回。

当 -i -t 参数一起使用时,则可以看到我们熟悉的 Linux 命令提示符。

$ docker run -dit ubuntu

$ docker ps

$ docker exec -i 69d1 bash

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

导出和导入

导出容器

$ docker ps -a

$ docker export 7691a814370e > ubuntu.tar

$ ls

这样将导出容器快照到本地文件(导出到本地哦)。

可以使用 docker import 从容器快照文件中再导入为镜像:

$ cat ubuntu.tar | docker import - test/ubuntu:v1.0

$ docker images

导入容器快照

Docker 1.13+

在 Docker 1.13+ 版本中推荐使用 docker container 来管理容器。

$ docker container export

$ docker image import

删除

$ docker rm

清理所有处于终止状态的容器

Docker 1.13+

在 Docker 1.13+ 版本中推荐使用 docker container 来管理容器。

$ docker container rm trusting_newton

$ docker container prune
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值