为简单易懂,此处不区分镜像和容器

搜索镜像

1
docker search 参数 关键词

常用参数:

  • --no-trunc 显示完整信息
  • -s n 列出不小于收藏数n的镜像

结果列表包括NAME(镜像名)、DESCRIPTION(简介)、STARS(收藏数)、OFFICAL(是否docker官方)、AUTOMATED(是否自动构建)

下载镜像

1
docker pull 镜像名[:版本]

不写版本使,默认为最新版lasted

创建一个容器,并运行一个镜像

1
docker run 参数 镜像名[:版本]

参数:

  • -it 交互模式运行
  • -P 将镜像内部端口随机映射到主机端口
  • -p 主机端口:镜像端口 将镜像内部端口映射到主机指定端口
  • --name="" 给容器起个名
  • -m 大小 设置容器可以使用的最大内存
  • -v 主机目录:镜像目录 将镜像目录的文件保存到主机目录(目录必须是绝对路径)
  • -d 在后台运行
  • -e 环境变量=值 设置环境变量

容器生命周期

1
2
3
4
5
6
7
8
9
10
docker start 容器名  #启动容器
docker stop 容器名 #停止正在运行的容器,容器停止了,但里面的镜像还在
docker restart 容器名 #重启容器
docker pause 容器名 #暂停该镜像的运行
docker unpause 容器名 #继续运行该镜像
docker create #命令参数同'docker run' 只会创建容器,但不会启动,需要使用start命令
docker exec -it 容器名 命令 #向正在运行的容器发送一条命令
docker cp 本机文件/目录 容器名:镜像内目录 #将本机文件/夹复制到镜像内
docker cp 容器名:镜像内文件/目录 本机目录 # 将镜像内文件复制到主机内
docker rm 容器名 #删除该容器

容器查看

  1. ps

    1
    docker ps 参数  列出容器参数

    常用参数:

    • -a 显示所有容器,包括未运行的
    • -l n 显示最近n条
    • --no-trunc 显示详细信息
    • -s 显示文件大小
  2. top

    1
    docker top 容器名  #查看容器中进程信息
  3. logs

    1
    docker logs 参数 容器名  #显示容器日志

    常用参数:

    • -f 跟踪输出
    • --since 日期 显示从该日期开始的日子
    • -t 显示时间
    • --tail n 显示最近n条日志
  4. inspect

    1
    docker inspect 容器名 #查看容器详细信息

容器保存

1
2
3
4
docker export  -o 快照名 容器名 #为当前镜像创建快照为tar(相当于虚拟机还原点)
docker save -o 文件名 容器名 #将容器保存为tar文件 (相当于虚拟机导出)
docker load -i 文件名 #恢复至还原点
docker import 文件名 新镜像名 #导入容器,并重命名

容器仓库

1
docker commit 参数 容器名 新镜像名:版本  #将该容器保存为新的镜像

常用参数:

  • -a “作者”
  • -m “说明”
  • -p 执行时,暂停该容器
1
docker login -u 用户名 -p 密码  #登陆docker
1
docker logout  #退出登录
1
docker push 镜像名:版本  #将本地镜像的指定版本上传到docker仓库

本地镜像管理

1
docker images [参数] [镜像名]

常用参数:

  • --digests 显示摘要信息
  • --no-trunc 显示完整信息
1
docker rmi 镜像名:版本 #删除镜像(-f 强制删除),删除前应先删除使用到该镜像的容器
1
docker build 参数

常用参数:

  • -t 镜像名:版本 指定镜像名和版本
  • -f 文件 指定Dockerfile文件,默认为当前目录下的Dockerfile

整体信息

1
docker info  #显示系统信息,包括镜像数、容器数、镜像文件所在目录、总内存大小等等