"Docker Basics: 3. Docker Common Commands" includes help startup commands, mirroring commands, and mirroring to create containers, which is the fundamental premise (download a CentOS or ubuntu mirror demo), container commands, and a small summary

Liu big cats. 2022-08-06 17:27:42 阅读数:652

dockerbasicsdockercommoncommands

在这里插入图片描述

3.Docker常用命令

在这里插入图片描述
一句话:Template when mirroring,The container is the real working instance object or instance container -> Generate container instances from images.

3.1帮助启动类命令

在这里插入图片描述

3.2镜像命令

在这里插入图片描述
注意点1:
列出本地主机上的镜像
在这里插入图片描述
注意点2:
docker search 某个XXX镜像名字
在这里插入图片描述
注意点3:
docker pull 某个XXX镜像名字
在这里插入图片描述
注意点4:
docker system df 查看镜像/容器/数据卷所占的空间
在这里插入图片描述

注意点5:

问题:面试题:谈谈docker虚悬镜像是什么?

答案:仓库名、标签都是的镜像,俗称虚悬镜像dangling image,It is recommended to delete the dangling mirror,不然dockerProblems can occur with packaging, compilation and deployment.
在这里插入图片描述
注意点6:
docker rmi -f 镜像ID
其中 -f:for forced deletion
如果不写-f,Then if the change container service is running,那么无法删除,报错如图1,而输入-f,A forced deletion will be performed.
在这里插入图片描述

3.3有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)

在这里插入图片描述
注意点1:

问题:Why is the case usedubuntu而不是使用centos?

答案:因为centos太大了,ubuntu很小,Convenient case use.

3.4容器命令

在这里插入图片描述
在这里插入图片描述

3.4.1新建+启动容器

在这里插入图片描述
注意点1:

  • 新建+启动容器: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 其中OPTIONS说明
    在这里插入图片描述
  • 启动交互式容器(前台命令行)
    在这里插入图片描述

注意点2:

问题:启动容器命令 :docker run -it中-it参数 干啥用的?

答案:其中:-it 指代 After you start there are further command input requests to you,Need you to return me a terminal,I need to enter commands to manipulate your container instance.

注意点3:

问题:大写-P 和 小写-pWhat are the parameters for? Usually lowercase -p

答案:请参照“Docker平台架构图解(架构版)”,如图1红框部分,我用docker模拟一个redis服务,Now want external accessredisWhat to do with the service? The answer is to configure port mapping -p 6379:6379,如图2,Visit the first one outside6379端口找到docker,然后dockerWill go to the container to find a second one6379The exposed service corresponding to the port.(即:-p 6379:6379左面6379Port exposed for the host,And the right one6379docker访问redis服务对应的端口
在这里插入图片描述

如图1

在这里插入图片描述

如图2

注意点4:
执行命令docker run -it redis发现也可以运行, The answer is not followed bybash或者/bin/bash,Then it will also run the script by default.

3.4.2列出当前所有正在运行的容器

在这里插入图片描述
注意点1:
列出当前所有正在运行的容器: docker ps [OPTIONS] 其中OPTIONS说明
在这里插入图片描述

注意点2:
如图1,CONTAINER IDRefers to the containerID,tail number hereadbbcorresponds to the figure2中的容器ID,另外NAMERefers to the container name,If no name is set,Then the system automatically assigns a name randomly,这里的pebsive_swansonIt is a name that is automatically and randomly assigned by the system.如果如图3Set the name when starting the service,那么如图1中NAME属性就会显示myu1的名字.
在这里插入图片描述

如图1

在这里插入图片描述

如图2

在这里插入图片描述

如图3

3.4.3退出容器

在这里插入图片描述

3.4.4启动已停止运行的容器

在这里插入图片描述

3.4.5重启容器

在这里插入图片描述

3.4.6停止容器

在这里插入图片描述

3.4.7强制停止容器

在这里插入图片描述

3.4.8删除已停止的容器

在这里插入图片描述
注意点1:
docker rm -> 删除容器
docker rmi -> 删除镜像

注意点2:

问题:How to delete a running container?

答案:有2种方式,方式1,Stop and then delete,如图1,方式2,使用rm -f命令强制删除,如图2
在这里插入图片描述

如图1

在这里插入图片描述

如图2

3.4.9重要

在这里插入图片描述

3.4.9.1启动守护式容器(后台服务器)

在这里插入图片描述
注意点1:

问题:使用docker run -d centosIt was found that the container exited automatically?如图

在这里插入图片描述

答案:docker机制问题
在这里插入图片描述

3.4.9.2查看容器日志

在这里插入图片描述

3.4.9.3查看容器内运行的进程

在这里插入图片描述
注意点1:

问题:docker ps [OPTIONS] -> 列出当前所有正在运行的容器,而docker top 容器ID ->
查看容器内运行的进程,Show what the difference is?

答案:The fields displayed are very different,docker ps展示容器ID、镜像ID,而docker top展示进程ID、数据卷TTY等等.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.4.9.4查看容器内部细节

在这里插入图片描述
注意点1:
打印输出,See the return is aJSON串,It contains commands、Network parameters, etc.
在这里插入图片描述

3.4.9.5进入正在运行的容器并以命令行交互

在这里插入图片描述
注意点1:
说明docker exec -it 容器ID bashShell
在这里插入图片描述
注意点2:

问题:attach进入和exec进入容器后,用exitDifferences after exit?

答案

attach 直接进入容器启动命令的终端,不会启动新的进程用exit退出,会导致容器的停止.

在这里插入图片描述

exec 是在容器中打开新的终端,并且可以启动新的进程用exit退出,不会导致容器的停止.

在这里插入图片描述

3.4.9.6Upload and download of container files

在这里插入图片描述
注意点1:
Upload and download of container files
在这里插入图片描述

3.4.9.7导入和导出容器

在这里插入图片描述
注意点1:
The case verification is shown in Fig:先把ubuntu镜像导出成abcd.jar -> 然后删除镜像 -> 再执行catThe import command generates a new image.
docker export 容器ID > 文件名.tar
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号
在这里插入图片描述
在这里插入图片描述
注意点2:
docker export --> import --> 启动 时可能会报错“Error response from daemon: No command specified”,需要带command,It can be executed on the host where the original container is locateddocker ps查看到,如果command比较复杂,还是使用docker save --> load --> 启动 的方式好了,You don't have to bring it to start this waycommand.

注意点3:

问题:docker save和docker export区别?

答案:如图,详情请看博客:
https://blog.csdn.net/liukuan73/article/details/78089138?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165941772816782425153541%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=165941772816782425153541&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-1-78089138-null-null.142v38pc_rank_34&utm_term=docker%20save%E5%92%8Cexport%E5%8C%BA%E5%88%AB&spm=1018.2226.3001.4187

在这里插入图片描述

3.4.9.8查看docker版本信息和系统信息

在这里插入图片描述

3.4.9.9docker save命令

在这里插入图片描述

3.4.9.10docker build命令

在这里插入图片描述

3.4.9.11docker上传镜像

在这里插入图片描述

3.4.9.12dockerModify the label version number

在这里插入图片描述

3.4.9.13docker 将本地镜像上传到镜像仓库(要先登陆到镜像仓库)

在这里插入图片描述

3.4.9.14dockerDelete files inside the container

命令:rm -f xxx

3.4.9.15 docker commitCommand to commit a copy of the container to make it a new image

公式:
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
命令:在容器外执行,记得
docker commit -m=“ifconfig cmd add” -a=“zzyy” a69d7c825c4f zzyyubuntu:1.2

3.5小总结

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

copyright:author[Liu big cats.],Please bring the original link to reprint, thank you. https://en.javamana.com/2022/218/202208061706123210.html