一、运行容器

  1. docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

参数说明:

  • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

  • -d: 后台运行容器,并返回容器ID;常用

  • -i: 以交互模式运行容器,通常与 -t 同时使用;常用

  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;常用

  • -p: 端口映射;容器端口和宿主机端口的映射;常用

  • -P: 端口映射;随机映射端口号

  • -v: 绑定宿主机和容器文件夹,绑定以后实现文件同步;常用

  • -w: 指定容器工作目录,也就是进入容器的默认目录

  • -h “mars”: 指定容器的hostname;

  • -e username=”ritchie”: 设置环境变量;

  • —name=”nginx-lb”: 为容器指定一个名称;常用

  • —dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

  • —dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

  • —env-file=[]: 从指定文件读入环境变量;

  • —cpuset=”0-2” or —cpuset=”0,1,2”: 绑定容器到指定CPU运行;

  • -m :设置容器使用内存最大值;常用

  • —net=”bridge”: 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;

  • —link=[]: 添加链接到另一个容器;常用

  • —expose=[]: 开放一个端口或一组端口;

  1. docker run -it -p 80:80 --name mycentos -v /zhibi:/zhibi -w /usr centos

二、查看容器

  1. docker ps

Docker容器操作 - 图1

如果没有指定name,docker会随机生成一个名字

1、参数说明:

  • -f :根据条件过滤显示的内容。

  • —format :指定返回值的模板文件。

  • -l :显示最近创建的一个容器。常用

  • -a :显示全部容器,包括已经停止的。常用

  • -n :列出最近创建的n个容器。 -n 6 常用

  • —no-trunc :不截断id输出,id默认显示16位,全部输入128位。

  • -q :静默模式,只显示容器编号。常用

  • -s :显示总的文件大小。

2、查看端口映射快捷方式

根据名字或者ID查看容器端口映射

  1. docker port ecb7db5c716f

Docker容器操作 - 图2

3、查看WEB应用程序日志

  1. docker logs ecb7db5c716f

参数说明:

  • -f: dokcer logs 像使用 tail -f 一样来输出容器内部的标准输出。

4、查看容器底层信息

  1. docker inspect ecb7db5c716f

5、查看容器使用情况

  1. docker stats [OPTIONS] [CONTAINER...]

参数说明:

  • -a: 显示所有的容器,默认只显示运行中的。

    三、停止容器

    1. docker stop ecb7db5c716f

参数说明:

  • -t: 强制关闭(相当于直接拔掉电源)

四、启动已经有的容器

  1. docker start ecb7db5c716f

参数说明:

  • -a:直接进入到容器里面

  • -i:直接进入到容器里面

五、重启容器

  1. docker restart ecb7db5c716f

参数说明:

  • -t:多少秒以后停止容器(默认十秒)

六、移除容器

  1. docker rm ecb7db5c716f

注:删除容器以前必须先停掉容器,不然会报错

Error response from daemon: You cannot remove a running container ecb7db5c716faf4b6c99f22e4c4373437fce51e6d497c3f05acd78eae5e04d51. Stop the container before attempting removal or force remove

参数说明:

  • -f:强制移除,运行中的也会被移除

  • -l:删除指定的连接

  • -v:删除和容器关联的卷,默认关联的卷不会删除

七、进入一个运行中的容器

  1. docker attach ecb7db5c716f

八、进入一个运行中的容器

  1. docker exec -it ecb7db5c716f /bin/bash

参数说明:

  • -i:以交互模式运行容器

  • -t:分配一个伪终端

  • -d:分离模式,在后台运行

注:最后的 /bin/bash 后面没有 /

九、退出容器

  1. # 方法一:(容器停止运行)
  2. exit
  3. # 方法二:(容器继续运行)
  4. ctrl + P + Q

十、查看容器内网ip信息

  1. docker inspect redis-master(容器ID)