7.1 Docker 容器-简介
使用单个镜像启动多个容器:
- 容器随其中的进程停止而停止
7.2 Docker 容器-详解
7.2.1 容器 vs 虚拟机
虚拟机:
- 硬件虚拟化
容器:
- 操作系统虚拟化
7.2.2 虚拟机的额外开销
7.2.3 运行的容器
7.2.4 检查 Docker daemon
- 检查 Docker 是否运行
$ docker version
- 添加用户到 docker 组
$ usermod -aG docker <user>
7.2.5 启动一个简单容器
Docker 可以远程:
- 非 TLS 端口: 2375
- TLS 端口: 2376
7.2.6 容器进程
7.2.7 容器生命周期
7.2.8 优雅地停止容器
docker container stop … 向容器发送 SIGTERM 信号.
7.2.9 利用重启策略进行容器的自我修复
重启策略:
- always: 容器停止时重启
$ docker container run --name neversaydie -it --restart always alpine sh
- unless-stopped: 与 always 类似, 但是在 daemon 重启后, 不会启动容器, 而 always 会
- on-failure: 容器退出码不是0时重启
7.2.10 Web 服务器示例
7.2.11 查看容器详情
- 构建 Docker 镜像时可以指定自动启动的程序
查看自动启动的程序:
- 在 Cmd 数组中
$ docker image inspect id
7.2.12 快速清理
$ docker container rm $(docker container ls -aq) -f