[TOC]
>[info] ## 1:什么是守护式容器?
1. 能够长期运行
2. 没有交互式会话
3. 适合运行应用程序和服务
<br>
<br>
>[info] ## 2:以守护的形式运行容器
运行交互式容器时以 **`Ctrl+P Ctrl+Q`** 来退出容器,此时容器还在后台继续运行,我们可以通过docker attach \[name\] 来重新进入容器
**注意:Mac是用contral + P + Q退出**
![](https://img.kancloud.cn/1c/2d/1c2d57063c807b39f9b4d45702b7d1bd_1016x247.png)
上面,我使用了contral + P + Q退出了容器,在使用attach进入了容器,docker ps查看到容器还在运行,然后使用exit退出了容器,在使用docker ps命令容器已经停止了
<br>
<br>
>[info] ## 3:附加到运行中的容器
上面我们成功的将容器至于到后台运行,那么我们如何再次进入我们已经退出的容器呢???
这里就需要docker的attach 容器名 命令
```
docker attach 容器名
```
![](https://img.kancloud.cn/32/60/326098c997f8dbb1d4336b7747d845c9_548x113.png)
<br>
<br>
>[info] ## 4:启动守护式容器
如何启动,run命令
docker run -d 鏡像名[COMMAND] [ARG..]
编写一个shell脚本,在容器里面不停的运行
```
docker run --name one1 -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
```
![](https://img.kancloud.cn/ee/b4/eeb4431c4cdb137f7a170ea10bd5ff6d_945x47.png)
下面返回的是容器的唯一ID
![](https://img.kancloud.cn/0a/0f/0a0f3831845e77cc4758158e6bbceaa2_971x68.png)
<br>
<br>
>[info] ## 5:查看容器日志
`docker logs [options] 容器`获取容器的日志。
| 名字 | 默认值 | 描述 |
| --- | --- | --- |
| –details | | 显示提供给日志的额外细节 |
| –follow或-f | | 按日志输出 |
| –since | | 从某个时间开始显示,例如2013-01-02T13:23:37 |
| –tail | all | 从日志末尾多少行开始显示 |
| –timestamps或-t | | 显示时间戳 |
| –until | | 打印某个时间以前的日志,例如 2013-01-02T13:23:37 |
<br>
<br>
### logs不指定选项
如果不指定logs的选项则返回所有日志
```
docker logs one1
```
<br>
### -t [输出时间]
```
docker logs -t one1
```
![](https://img.kancloud.cn/ed/d5/edd573085d58415398fda593d6cc11c2_373x324.png)
<br>
### -tf [实时更新]
```
docker logs -tf one1
```
<br>
### - tail 10[只显示10条]
```
docker logs -tf --tail 10 one1
```
![](https://img.kancloud.cn/fa/e6/fae62e0bf2bf470b1bfcc6c1abff1f2d_489x284.png)
<br>
### - tail 0[只显示最新]
```
dokcer logs -tf --tail 0 one1
```
<br>
<br>
>[info] ## 6:查看容器进程
**`docker top 容器名`**
```
docker top one1
```
![](https://img.kancloud.cn/3f/05/3f050304e5ae0346ec3348559d5aaf5e_1136x107.png)
<br>
<br>
>[info] ## 7:在运行中的容器内启动新进程
```
docker exec [-d-][i][-t]容器名[COMMAND] [ARG...]
```
![](https://img.kancloud.cn/58/ec/58ecf0e1d69332e2e69d7274466cd41f_1194x191.png)
<br>
<br>
>[info] ## 8:如何停止守护式容器
两种方式:
**`docker stop 容器名`** stop是发送一个信号给容器,等待容器的停止
**`docker kill 容器名`** kill命令是直接停止容器
- Docker学习
- Docker—小白篇
- docker:常用命令
- 第一章:docker的世界
- 第一节:docker基本概念和框架
- 1.1:docker应用场景
- 1.2:docker镜像
- 1.3:docker容器
- 1.4:docker仓库
- 1.5:Docker的能力
- 1.6:Docker运行原理
- 1.7:Docker平台架构图解
- 第二节:docker安装和配置
- 1.1:Ubuntu安装docker
- 1.2:windows安装docker
- 1.3:OS X中安装docker
- 1.4:CentOS 安装Docker
- 第二章:Docker容器
- 第一节:容器的基本操作
- 1.1:Docker的第一条命令
- 1.2:启动容器
- 1.3:守护式容器
- 1.4:容器中部署静态网站
- 1.5:Docker安装Jenkins
- 1.6:docker安装redis