Docker 最常用的镜像命令和容器命令详解

Docker 最常用的镜像命令和容器命令详解,第1张

Docker最常用的镜像命令和容器命令详解

本文详细介绍了Docker最常见的镜像命令和容器命令,对大家来说非常详细。对大家的学习、培训或者工作都有一定的参考价值,一定要朋友们参考。

本文列举了Docker应用全过程中最常见的镜像命令和容器命令,教大家如何实际 *** 作容器数据信息卷,完成容器数据信息的备份数据。掌握了这个命令之后,再讲一些简单的部署培训,大家就可以学习和培训Docker的镜像搭建、备份恢复转移、镜像仓库、互联网、集群等等。

镜像相关命令

正式文本文件:https://docs.docker.com/reference/

查询镜像

[root@localhost~]#dockerimages REPOSITORYTAGIMAGEIDCREATEDSIZE hello-worldlatestbf756fb1ae657monthsago13.5kB
  • REPOSITORY:仓库中镜像的名称,在本文中通常称为镜像名称。
  • 标签:镜像ID
  • 图像ID:镜像ID
  • 创建日期:创建图像的日期(不是获取图像的日期)。
  • 尺寸:镜子大小
  • 所有这些图像都存储在Docker主机的/var/lib/Docker目录中。

    取回镜像

    如果您必须从互联网上搜索所需的图像,您可以根据以下命令进行搜索。

    dockersearch镜像名字

  • 名称:镜像名称
  • 描述:镜像叙事
  • 明星:用户反馈反映了镜像的受欢迎程度。
  • 官方:是给官网建的吗?
  • AUTOMATED:全自动构建,表示映像是由DockerHub的全自动构建步骤构建的。
  • 拿镜子

    获取镜像就是从中心仓库免费下载镜像到本地。

    dockerpull镜像名字

    如果我想把centos图像拿到本地,如果标签图像识别信息内容没有说明,默认会得到最新的版本号。您还可以根据:https://hub.docker.com/搜索图像,并查询适用的标签信息内容。

    根据标签信息,如果我们想免费下载centos7的图片。

    dockerpullcentos:7

    删除镜像

    通过镜像ID删除镜像。

    #删掉单独镜像 dockerrmi镜像ID #删掉好几个镜像 dockerrmi镜像ID镜像ID镜像ID

    Dockerimages-q可以查看所有图片的ID,并可以根据构图命令完成删除所有图片的实际 *** 作。

    dockerrmi`dockerimages-q`

    注意:如果容器是基于某个图像构建的,则不能删除该图像。

    解决方法:先删除图像中的容器,再删除图像。

    容器相关命令

    查询容器

    查询已经 *** 作过的容器。

    [root@localhost~]#dockerps CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES
  • 集装箱标识:集装箱标识
  • 图片:从属镜像
  • 命令:
  • 创建时间:创建时间
  • 状态:容器状态
  • 端口:端口号
  • 名称:容器名称
  • 终止的容器。

    dockerps-fstatus=exited

    查询所有容器(包括 *** 作和终止)。

    dockerps-a

    查询最后 *** 作的容器。

    dockerps-l

    设置和启动容器

    dockerrun[OPTIONS]IMAGE[COMMAND][ARG...]
  • -i:指明 *** 作容器;
  • -t:表示容器启动后将进入其命令行。添加这两个主要参数后,容器就可以在建立时登录了。即分配伪终端设备;
  • -name:命名创建的容器;
  • -v:表示目录投影关联(前者是主机目录,后者是主机上投影的目录),可以应用几个-v做几个目录或者文档投影。注意:最好做目录投影,在主机上做修改,然后在容器上共享资源;
  • -d:运行后添加-d主参数,后台程序会设置一个守护容器(那样设置容器后不容易快速登录容器,如果只使用-i-t主参数,设置容器后会自动进入容器);
  • -p:表示端口映射,前者是主机端口号,后者是容器中映射的端口。能够应用几个-p并映射几个端口。
  • -P:任何应用程序主机的可用端口号都与容器中公开的端口进行映射。
  • 创建并转到容器

    下面这个命令的意思是根据图片AA创建一个容器BB, *** 作容器,转到容器的/bin/bash。

    dockerrun-it--name容器名字镜像名字:标识/bin/bash

    注意:Docker集装箱 *** 作必须有前台接待流程。如果前台没有接待流程,集装箱觉得空多余就自动撤。

    从今天的容器中取出

    exit

    通过保护方法构建容器

    dockerrun-di--name容器名字镜像名字:标识

    降落在防护集装箱上的方法

    dockerexec-it容器名字|容器ID/bin/bash

    终止和启动容器

    #终止容器 dockerstop容器名字|容器ID #起动容器 dockerstart容器名字|容器ID

    文档副本

    如果我们必须将文档复制到容器中,我们可以应用cp命令。

    dockercp必须复制的文档或目录容器名字:容器目录

    您还可以从容器中复制文档。

    dockercp容器名字:容器目录必须复制的文档或目录

    安装目录(容器数据信息量的实际 *** 作)

    我们可以在建立容器的情况下,用容器中的目录来投影主机的目录,这样每个人都可以通过更改主机的一个目录的文档来危害容器,这个实际 *** 作是双重关联的。换句话说,在容器中的实际 *** 作也会对主机造成伤害,从而完成备份数据的功能。

    但是删除容器时,主机的内容不会被删除,因为底层是按照复制完成的。如果几个容器装载同一个目录,并且其中一个被删除,其他容器的内容不会受到损害。同样,底层也是复制的。

    但是,当容器被删除时,主机的内容不会被删除。如果几个容器装载同一个目录,并且一个容器被删除,其他容器的内容不会受到损害。

    容器主机中间的数据信息量属于导入关联。数据信息量是外部装入容器的,所以可以摆脱容器的生命,单独存在。而且,数据信息量的寿命不等于容器的寿命。在容器被撤回或删除之后,数据信息量仍然不容易受到损害,并且数据信息量的寿命将继续,直到没有容器被使用。

    用-v主参数创建一个容器,文件格式为主机目录:容器目录,例如:

    dockerrun-di-v/mydata/docker_centos/data:/usr/local/data--namecentos7-01centos:7 #多目录挂载 dockerrun-di-v/宿主机目录:/容器目录-v/宿主机目录2:/容器目录2镜像名

    在目录挂载的实际 *** 作中,很可能会出现管理权限不足的提醒。这是因为CentOS7中的安全控制模块SELinux禁用了管理权限,在docker运行时根据-privileged=true为容器添加了管理权限,以处理挂载的目录没有管理权限的问题。

    秘密名称装载

    秘密挂载只能通过写容器目录来完成,匹配容器外观的目录会在/var/lib/docker/volume中形成。

    #密名挂载 dockerrun-di-v/usr/local/data--namecentos7-02centos:7 #查询volume数据信息卷信息内容 dockervolumels

    命名装载

    被命名是指用一个名字对数据信息进行滚动,容器中匹配的目录会在/var/lib/docker/volume中形成。

    #密名挂载 dockerrun-di-vdocker_centos_data:/usr/local/data--namecentos7-03centos:7 #查询volume数据信息卷信息内容 dockervolumels

    特定目录挂载

    一开始给大家讲解的方法都属于特定目录挂载,这类方法的挂载在/var/lib/docker/volume目录下不容易形成内容。

    dockerrun-di-v/mydata/docker_centos/data:/usr/local/data--namecentos7-01centos:7 #多目录挂载 dockerrun-di-v/宿主机目录:/容器目录-v/宿主机目录2:/容器目录2镜像名

    查询目录装载关联

    根据dockervolumeinspect数据信息量的名称,可以查询到与该数据信息量相匹配的主机的目录详细地址。

    [root@localhost~]#dockervolumeinspectdocker_centos_data [ { "CreatedAt":"2020-08-13T20:19:5108:00", "Driver":"local", "Labels":null, "Mountpoint":"/var/lib/docker/volumes/docker_centos_data/_data", "Name":"docker_centos_data", "Options":null, "Scope":"local" } ]

    根据dockerinspect容器ID或名称,在返回的JSON连接点中查找挂载,可以查看挂载信息内容的详细数据信息。

    写保护/读/写能力

    #写保护。只有根据改动宿主机內容完成对容器的数据库管理。 dockerrun-it-v/宿主机目录:/容器目录:ro镜像名 #读写能力,默认设置。宿主机和容器能够双重实际 *** 作数据信息。 dockerrun-it-v/宿主机目录:/容器目录:rw镜像名

    卷-从(继承)

    #容器centos7-01特定目录挂载 dockerrun-di-v/mydata/docker_centos/data:/usr/local/data--namecentos7-01centos:7 #容器centos7-04和centos7-05等同于承继centos7-01容器的挂载目录 dockerrun-di--volumes-fromcentos7-01--namecentos7-04centos:7 dockerrun-di--volumes-fromcentos7-01--namecentos7-05centos:7

    查询集装箱IP详细地址

    我们可以根据下面的命令查询容器的元信息内容。

    dockerinspect容器名字|容器ID

    您还可以立即执行以下命令,立即输出详细的IP地址。

    dockerinspect--format='{{.NetworkSettings.IPAddress}}'容器名字|容器ID

    删除容器

    #删掉特定容器 dockerrm容器名字|容器ID #删掉好几个容器 dockerrm容器名字|容器ID容器名字|容器ID

    之前给大家详细介绍了Dockerrun命令的 *** 作方法。有兴趣的盆友可以参考一下!

    到目前为止,这篇关于最常见的Docker镜像命令和容器命令的详细描述已经在这里详细介绍过了。有关Docker镜像命令和容器命令的大量信息,请搜索您以前的文章或再次访问下面的相关文章。期待你以后的申请!

    欢迎分享,转载请注明来源:内存溢出

    原文地址: http://outofmemory.cn/zz/774386.html

    (0)
    打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
    上一篇 2022-05-03
    下一篇 2022-05-03

    发表评论

    登录后才能评论

    评论列表(0条)

    保存