1、启动容器

1
docker run --detach --name web nginx:latest

–detach 缩写是 -d, 使用该选项,程序将在后台启动,不会附着到终端。运行守护式容器适合后台静默运行程序,也即是守护程序。

–name, 每个容器分配一个唯一的标识符, 一个16进制编码的1024位数字。大多数Docker界面上,Docker ID会截断前12个字符,使生成的ID更人性化,–name标识可以给容器分配一个固定的名称。

1.1、交互式容器

1
docker run --ineractive --tty --name test busybox:latest /bin/sh

–interactive(或-i) 选项会让Docker保持标准输入流(stdin, 标准输入)对容器开发, 即使容器没有终端连接。

–tty(或-t)选项会让Docker为容器分配一个虚拟终端,这使得可以给发送信号给容器

2、查看正在运行中的容器

docker ps 命令可以查看当前正在运行中的容器。

1
2
3
❯ docker ps                                                                
CONTAINER ID  IMAGE COMMAND  CREATED STATUS  PORTS NAMES
21f9caa76a05 busybox:latest  "/bin/sh -c 'sleep 3…"  21 minutes ago      Up 21 minutes   nsa

该命令显示每个运行中容器的以下信息:

  • CONTAINER ID 容器ID
  • IMAGE 使用的镜像
  • COMMAND 执行的命令
  • CREATED 容器运行的时长
  • PORT 容器暴露的网路端口
  • NAMES 容器名

3、重启容器

1
docker restart test

docker restart 通过容器的ID或者容器名称,可以重启已经停止的容器

4、查看容器日志

1
docker logs test

通过docker logs命令选项–fllow(或-f),可用来显示容器日志,并继续监视和更新容器的日志显示,不放过日志中的任何变化。

5、只读文件系统

1
docker run -d --read-only wordpress:4

使用–read-only标志,可以创建一个只读的文件系统,容器不能更改它所包含的任何文件,因而即使容器中有攻击者,也无法破坏任何文件

6、注入环境变量

1
docker run --env MY_ENV="hello world" busybox:latest

使用–env或者缩写-e,可以用于注入任何环境变量

7、自动重启容器

Docker 提供重启策略,来控制容器退出时的自动重启行为。要为容器配置重启策略,需要在docker run 命令使用–restart标志, –restart标志值可以使用以下值:

描述
no 不自动重启容器(默认值)
on-failure 容器由于错误退出也即非0退出时,自动重启容器
always 不管退出状态码是什么始终重启容器,docker daemon将无限次数地重启容器。容器也会在daemon启动时尝试重启,不管容器当时的状态如何。
unless-stopped 同always相似,不管退出状态码是什么始终重启容器,不过当daemon启动时,如果容器之前已经为停止状态,不会尝试启动它。
1
docker run -d --restart unless-stopped redis