之前在 https://blog.csdn.net/fengbingchun/article/details/109584460 中介绍过在Windows10家庭版和Ubuntu16.04上安装Docker的操作步骤,这里整理下Docker客户端常用命令。

在Windows10家庭版上运行Docker后,通过VMware就不能打开Ubuntu16.04虚拟机了,提示"VMware Workstation与Device/Credential Guard不兼容。在禁用Device/Credential Guard后,可以运行VMware Workstation",原因是Windows10开启Hyper-V后与VMware Workstation冲突导致无法运行和新建虚拟机,可通过以管理员身份打开PowerShell,然后输入命令"bcdedit /set hypervisorlaunchtype off",然后重启,此时VMware可正常运行了,不过在Windows10上的Docker就不能正常启动了,需在PowerShell中输入命令"bcdedit /set hypervisorlaunchtype auto",然后重启,Windows10上的Docker可正常运行。还有一种说法是将VMware更新到较高的版本。

Windows10上启动Docker:双击"Docker Desktop"图标,等待片刻,当鲸鱼图标静止时,Docker启动成功,之后打开PowerShell(Win+x后点击Windows PowerShell)使用Docker。
为了能在Docker Hub上拉取镜像,首先需要在https://hub.docker.com上免费注册一个账号。

每个命令的具体用法都可以通过--help来查看,如查看pull命令的详细用法,执行: $ docker pull --help

docker version # 输出Docker的版本信息
docker info # 显示一些相关的Docker系统信息
docker login # 登录Docker Hub,要求输入用户名和密码
docker logout # 退出Docker Hub
docker search ubuntu # 通过search命令查找Docker Hub中的镜像,如查找ubuntu,search命令并不支持查找TAG版本,可登录Docker Hub,搜索框中搜索ubuntu,然后再在Filter Tags中搜索指定的版本
docker pull ubuntu:16.04 # 从Docker Hub中获取镜像,若不给出用户名,则默认为library,为官方镜像,若拉取自己的镜像,则为docker pull fengbingchun/ubuntu:16.04
docker tag ubuntu:16.04 fengbingchun/ubuntu:v2.0 # 为一个镜像打标签,将其归入指定仓库,如将镜像"ubuntu:16.04"标记为"fengbingchun/ubuntu:v2.0"
docker images # 查看当前系统中已存在的镜像,列表包含了仓库名(REPOSITORY)、标签(TAG)、镜像ID(IMAGE ID)、创建时间(CREATED)、所占用空间(SIZE),此命令只会显示顶层镜像
docker image ls -a # 显示包括中间层镜像在内的所有镜像
docker image ls ubuntu # 根据仓库名列出镜像,如列出仓库名为ubuntu的所有镜像
docker image prune # 删除虚悬镜像(dangling image): 如果新旧镜像同名,旧镜像名称被取消,从而出现仓库名、标签均为<none>的镜像,一般来说,虚悬镜像已经失去了存在的价值,是可以随意删除的
docker image rm hello-world # 删除本地镜像,如删除镜像名为hello-world的镜像,除了使用镜像名(仓库名:标签)删除外,还可以使用镜像短ID、镜像长ID或镜像摘要(DIGEST)删除镜像
docker run fengbingchun/ubuntu:16.04 env # 查看指定镜像"fengbingchun/ubuntu:16.04"支持的环境变量
docker save -o ubuntu_v1.0.tar fengbingchun/ubuntu:v1.0 # 保存一个镜像到tar包,"ubuntu_v1.0.tar"为tar包名,"fengbingchun/ubuntu:v1.0"为本地镜像
docker load -i ubuntu_v1.0.tar # 从tar包加载一个镜像
docker push fengbingchun/ubuntu:16.04 # 将自己(用户名为fengbingchun)的镜像推送到Docker Hub
docker history ubuntu:16.04 # 查看镜像内的历史记录,如查看ubuntu:16.04
# 通过Dockerfile构建镜像,-t后面的"fengbingchun/ubuntu:16.04"为新建镜像的名称,最后的".",实际上是在指定上下文的目录,docker build命令会将该目录下的内容打包交给Docker引擎以帮助构建镜像
docker build -t fengbingchun/ubuntu:16.04 .
docker container ls -a # 查看容器的状态
docker container exec -it bcb8 bash # 进入容器,其中"bcb8"为容器ID(ID值能与其它容器ID区分开即可),只有当容器状态为Up时即容器运行时才有效
# 新建并启动一个容器,启动一个bash终端,允许用户进行交互,-t选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上,-i则让容器的标准输入保持打开
docker run -it fengbingchun/ubuntu:16.04 /bin/bash
docker run fengbingchun/ubuntu:16.04 /bin/echo "hello" # 新建一个容器,并输出"hello"之后终止容器
docker container start bcb8 # 将一个已经终止的容器启动运行,其中"bcb8"为容器ID
docker container stop bcb8 # 将一个运行中的容器终止,其中"bcb8"为容器ID
docker export -o ubuntu.tar bcb8 # 导出容器,将导出容器快照到本地tar包,其中"bcb8"为容器ID
docker import ubuntu.tar fengbingchun/ubuntu:v1.1 # 导入tar包容器快照,从容器快照文件中再导入为镜像
docker container rm bcb8 # 删除一个处于终止状态的容器,其中"bcb8"为容器ID
docker container rm -f bcb8 # 删除一个运行中的容器,其中"bcb8"为容器ID
docker container prune # 删除掉所有处于终止状态的容器
docker diff bcb8 # 查看容器的存储层的具体的改动,其中"bcb8"为容器ID
docker commit bcb8 fengbingchun/ubuntu:v1.0 # 在原有镜像的基础上,再加上容器的存储层,并构成新的镜像,其中"bcb8"为容器ID,"fengbingchun/ubuntu:v1.0"为新建镜像的名称
docker inspect fengbingchun/ubuntu:v1.0 # 显示指定镜像的具体配置信息,"fengbingchun/ubuntu:v1.0"为镜像的名称
docker inspect bcb8 # 显示指定容器的具体配置信息,其中"bcb8"为容器ID
docker inspect --format '{{.NetworkSettings.IPAddress}}' bcb8 # 获取指定容器的IP地址,其中"bcb8"为容器ID,只有当容器状态为Up时即容器运行时才有效
docker cp 1.txt bcb8:/home/ # 将主机文件或目录拷贝到容器指定的目录下,其中"bcb8"为容器ID
docker cp bcb8:/home/1.txt . # 将容器指定目录或指定目录下的文件拷贝到主机当前目录下,其中"bcb8"为容器ID
docker logs -f bcb8 # 获取指定容器的日志,其中"bcb8"为容器ID
docker rename yyyy xxxx # 重命名一个容器,其中"yyyy"为原容器名,"xxxx"为新容器名
docker top bcb8 # 查看正在运行中的容器的进程信息,其中"bcb8"为容器ID
docker system df # 查看镜像、容器、数据卷所占用的空间

Docker客户端常用命令整理相关推荐

  1. docker常用命令_docker常用命令整理

    docker常用命令整理 代码狂魔 • 5 天前 • 技术积累 • 14 • 0 前面已经把docker是什么和 docker怎么安装已经写了,现在我将常用命令做一个整理,方便日后查阅 常用命令 do ...

  2. docker 容器 exited_docker常用命令整理

    docker常用命令整理 代码狂魔 • 5 天前 • 技术积累 • 14 • 0 前面已经把docker是什么和 docker怎么安装已经写了,现在我将常用命令做一个整理,方便日后查阅 常用命令 do ...

  3. android 常用命令,Android开发常用命令整理

    一些命令,不常用就忘记了,特整理在这里,忘了就查查.. ·        alias 用于定义和查询别名,但不保存.修改home目录下.bashrc保存定义别名格式,不加参数即查询别名:alias c ...

  4. kubernetes常用命令整理

    一.维护类: master节点: [root@k8s-master01 -]# for I in etcd kube-apiserver kube-controller-manager kube-sc ...

  5. Linux 常用命令整理(Centos7) (时区/正则/sed/htop/screen/ln/awk/……)

    目录 Linux 常用命令整理(Centos7) (附加正则.时区.git等) 一.系统查询常用命令: 1.文件中空格制表符替换sed 2.查看宿主机的用户名密码 3.last .w.lastb 查看 ...

  6. Docker的RUN流程和Docker原理、Docker的常用命令、其他命令

    Docker的RUN流程和Docker原理 Run流程 底层原理 Docker是怎么工作的 Docker为什么比VM快 Docker的常用命令 帮助命令 镜像命令 查看镜像 搜索镜像 下载镜像 指定版 ...

  7. Docker初学3:Docker的常用命令

    Docker的常用命令 帮助命令 帮助命令可以在我们遇到不懂的命令时帮助我们去了解它们怎么使用. docker version # 显示 Docker 版本信息. docker info # 显示 D ...

  8. python常用命令汇总-python数据分析之pandas常用命令整理

    原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...

  9. Docker 精通之常用命令

    Docker 精通系列 Docker 精通之入门 Docker 精通之微服务 Docker 精通之常用命令 Docker 精通之 Dockerfile 配置文件路径 /etc/sysconfig/do ...

最新文章

  1. HDU 1273 漫步森林
  2. linux c 宏定义 #define _GNU_SOURCE 含义
  3. cmd导出服务器文件大小,通过powershell或者cmd导出单个OU计算机信息
  4. 使用JavaScript ES6的新特性计算Fibonacci(非波拉契数列)
  5. red hat安装宝塔_只需几分钟即可安装Red Hat Container Development Kit(视频)
  6. 光学字符识别 Tesseract-OCR 的下载、安装和基本用法
  7. 两个文件比较之comm命令
  8. 三个数相减的平方公式_快收好这份小学数学公式大全!孩子遇到数学难题时肯定用得上...
  9. JavaScript Try Catch:异常处理说明
  10. Windows PowerShell 语言快速参考
  11. 团队管理(3)---团队管理方法
  12. html行分割,如何确定一个html标签是否分割成多行
  13. 数组sort()方法排序
  14. imageView 的contentMode问题
  15. MDM数据质量应用说明
  16. as常用固定搭配_as 。。。as 一些常考的固定搭配【重点中考】
  17. 计算机科学与技术如何创新,计算机科学与技术专业创新能力的培养途径
  18. 【Druid】(四)Apache Druid 部署和配置(单机版 / Docker 容器版 / Kubernetes 集群版)
  19. 2023最新高频前端面试题总结(附答案)
  20. 浅谈学术论文rebuttal

热门文章

  1. Windows10下python-pcl的安装步骤说明,亲测ok
  2. LabVIEW条形码识别(实战篇—5)
  3. Android替换view父节点,android – issue:指定的子节点已经有父节点.您必须首先在孩子的父母上调用removeView()...
  4. python制作统计图_刻意练习11:Python描述统计、简单统计图形
  5. 从零开始的ROS四轴机械臂控制-目录
  6. Maya阿诺德室外环境灯光照明和渲染技术学习视频教程
  7. 浅谈GCC预编译头技术
  8. C语言网络编程:listen函数详解
  9. [转]Java中常用的集合—初学者的你不可错过的精编整理
  10. Servlet的基本架构