帮助启动类命令


  • 启动docker:systemctl start docker
  • 停止docker:systemctl stop docker
  • 重启docker:systemctl restart docker
  • 开机启动docker:systemctl enable docker
  • 查看docker概要信息:docker info
  • 查看docker总体帮助文档:docker --help
  • 查看docker命令帮助文档:docker 具体命令 --help

镜像命令


  • docker images : 列出本地主机上的镜像
    • -a:列出本地所有的镜像
    • -q:只显示镜像ID
[root@localhost ~]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    9c7a54a9a43c   2 months ago   13.3kB

选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签版本号
IMAGE ID:镜像的ID
CREATED:镜像创建的时间
SIZE:镜像大小

同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用
ubuntu:latest 镜像
  • docker search 某个镜像名字 : 查找仓库中的镜像
    • --limit:只列出N个镜像,默认25个

  • docker pull 镜像名称[:TAG]:下载镜像
  • docker system df: 查看镜像/容器/数据卷所占用的空间
  • docker rmi 镜像id: 删除镜像;
    • docker rmi 镜像名1:TAG 镜像名2:TAG :删除多个
    • docker rmi $(docker images -qa) : 删除全部
    • -f : 强制删除

提交镜像

docker commit -m = "提交的描述信息" -a = "作者" 容器id 要创建的目标镜像名:[标签]: 提交容器副本使之成为一个新的镜像

  • 导出镜像和提交镜像的的区别

容器命令


容器启动

  • 新建+启动容器:docker run [OPTIONS] IMAGES [COMMAND] [ARG...]
    OPTIONS说明
    • --name="容器新名字": 为容器指定一个名称
    • -d:后台运行容器并返回容器ID,也即启动守护式容器(后台运行)
    • -i:以交互模式运行容器,通常与-t同时使用 (i interactive交互)
    • -t:为容器重新分配一个伪输入终端,通常与-i同时使用,也即启动交互式容器(前台有伪终端,等待交互) (t tty 终端)
    • -P:随机端口映射
    • -p:指定端口映射
  • 进入正在运行的容器并以命令行交互: docker exec -it 容器ID bashShell
    • 在容器中打开新的终端,并且可以启动新的进程,用exit退出,不会导致容器的停止
      • bashShell:指的是使用什么终端的路径打开,如 bash 就写 /bin/bash
  • 直接进入容器启动命令的终端,不会启动新的进程,exit退出,会导致容器的停止: docker attach 容器ID

容器状态

  • 列出当前所有正在运行的容器:docker ps [OPTIONS]

    • OPTIONS说明
      • -a:列出当前所有正在运行的容器+历史上运行过的
      • -l:显示最近创建的容器
      • -n:显示最近创建n个容器
      • -q:静默模式,只显示容器编号
  • 查看容器内运行的进程: docker top 容器ID或容器名

  • 查看容器内部细节: docker inspect 容器ID

容器启停

  • 退出容器 : exit 或 键盘按下ctrl+p+q
    • exit: run机器容器,exit退出,容器停止
    • ctrl+p+q: run进去容器,ctrl+p+q退出,容器不停止
  • 启动已停止的容器: docker start 容器ID或容器名
  • 重启容器: docker restart 容器ID或容器名
  • 停止容器: docker stop 容器ID或容器名
  • 强制停止容器: docker kill 容器ID或容器名
  • 删除已停止的容器: docker rm 容器ID或容器名
  • 删除多个容器实例:docker rm $(docker ps -a -q)docker ps -a -q | xargs docker rm

容器日志

  • 查看容器日志: docker logs 容器ID或容器名

容器文件互传

  • 从容器内拷贝文件到主机上
    • 容器 -> 主机 :docker cp 容器ID或容器名:容器内路径 目的主机路径
    • 主机 -> 容器:docker cp 目的主机路径 容器ID或容器名:容器内路径
  • 导入和导出容器
    • docker export 容器ID > 文件名.tar: 导出容器的内容流作为一个tar归档
    • cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号:从tar包中的内容创建一个新的文件系统再导入为镜像