1 查看容器

  1. # 查看正在运行的容器
  2. sudo docker container ls # 法一
  3. sudo docker ps # 法二
  4. # 查看所有的容器
  5. sudo docker container ls --all # 法一
  6. sudo docker ps -a # 法二

docker ps [option]命令

option说明:
-a:显示所有的容器,包括未运行的。
-q:静默模式,只显示容器编号。
-f:根据条件过滤显示的内容。
—format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
—no-trunc:不截断输出。
-s:显示总的文件大小。

2 创建容器

  1. sudo docker run [option] 镜像名 [向启动容器中传入的命令]

option参数说明:

  • -i 表示以交互模式运行容器。
  • -t 表示容器启动后会进入其命令行。
  • —name 为创建的容器命名。
  • -v 表示目录映射关系,宿主机目录:容器中目录。
  • -d 会创建一个守护式容器在后台运行(创建容器后不会自动登录容器)。
  • -p 表示端口映射,宿主机端口:容器中端口。
  • —network=host 表示将主机的网络环境映射到容器中,使容器的网络与主机相同。

    (1) 交互式容器

    1. sudo docker run -it --name=ubuntu1 ubuntu:16.04 /bin/bash

    Docker容器操作 - 图1

    (2) 守护式容器

  • 开启守护式容器

    1. sudo docker run -dit --name=ubuntu2 ubuntu:16.04

    Docker容器操作 - 图2

  • 进入容器内交互环境

    1. sudo docker exec -it 容器名或容器id 进入后执行的第一个命令
    2. sudo docker exec -it ubuntu2 /bin/bash

    Docker容器操作 - 图3

3 停止和启动容器

  1. # 停止容器
  2. sudo docker container stop 容器名或容器id
  3. # 强制结束容器
  4. sudo docker container kill 容器名或容器id
  5. # 启动容器
  6. sudo docker container start 容器名或容器id
  7. # 同时启动多个容器(container可省略)
  8. sudo docker start 容器名1 容器名2 容器名3 # 法一
  9. sudo docker start $(sudo docker ps -a -q) # 法二
  10. # 同时停止多个容器
  11. sudo docker stop $(sudo docker ps -a -q)

Docker容器操作 - 图4

4 删除容器

  1. sudo docker container rm 容器名或容器id # 正在运行的容器无法直接删除
  2. sudo docker container rm -f 容器名或容器id # 强制删除, 可删除正在运行的容器

Docker容器操作 - 图5

5 容器制作成镜像

为保证已经配置完成的环境可以重复利用,我们可以将容器制作成镜像。

  1. sudo docker commit 容器名 镜像名

Docker容器操作 - 图6

6 docker容器与宿主机互传文件

(1) 容器 -> 宿主机

  1. docker cp 容器ID:容器内路径 宿主机路径

注意: 命令要在宿主机中执行
Docker容器操作 - 图7

(2) 宿主机 -> 容器

  1. docker cp 宿主机路径 容器ID:容器内路径

注意: 命令要在宿主机中执行
Docker容器操作 - 图8

7 查看容器日志

  1. sudo docker logs [options] container
  2. options:
  3. --details 显示更多的信息
  4. -f, --follow 跟踪实时日志
  5. --since string 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)
  6. --tail string 从日志末尾显示多少行日志, 默认是all
  7. -t, --timestamps 显示时间戳
  8. --until string 显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟)

image.png