温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker中的Container是什么

发布时间:2021-11-16 14:57:56 来源:亿速云 阅读:514 作者:iii 栏目:大数据

本篇内容介绍了“Docker中的Container是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

什么是Container

  • 通过Image创建( copy )

  • 在Image layer之上建立一个container layer(可读写)

  • 类比面向对象:类和实例

  • Image负责app的存储和分发,Container 负责运行app

docker container ls 可以例举出来本地正在运行的容器

docker container ls -a 例举出所有的容器,包括正在运行的或已经结束的

里面有 COMMAND 字段如:“/hello”,代表着Dockerfile里的CMD ["/hello"]

more hello-world/Dockerfile 查看这个文件里面的配置

当我们用 docker run xxx(image) 运行container 的时候默认会执行CMD["/hello"] 里面的命令 

docker run xxx 命令是运行完就结束的,它不是一个常驻内存的一个进程

centos 是一个比较复杂的image,可以使用docker run centos 执行这个image,如果

里面有centos版本的化可以 docker run centos:7 进行指定版本运行

交互式运行容器的方法:

  • docker run -it centos 可以常驻内存,运行后不会直接退出

  • docker run --help 查询docker 运行的帮助

  • docker run -i xxx 是交互式的 -i 代表 interactive(交互式)

  • docker run -t xxx 代表 Allocate a pseudo-TTY

每创建一个容器实际上就是在之前的 image 上多了一层,使用 docker container ls查看正在运行的容器,如 hello-world 

docker container ls -a 可以查看所有已经退出或者正在运行容器,那么我们如何进行删除呢?

命令:docker 查看docker有哪些命令 

输入docker命令有两个模块,一个是Management Commands,一个是Commands

Management Commands 是对docker里面的一些对象进行管理的命令

命令:docker container rm (container的ID)

命令:docker container ls -a(所有container运行或已退出的容器)

命令:docker container ls -aq (列举出来所有的 container ID) 和 docker container ls -a | awk {'print$1'} 是一样的

命令:docker rm $(docker container ls -aq) 删除所有正在运行的 container 

命令:docker container ls -f "status=exited" 把所有状态为 exited 的 container 列举出来,后面加个 -q 则只列出ID

命令:docker rm $(docker container  ls -f "status=exited" -q) 将所有状态为 exited 的container 删除

命令:docker ps -a 和 docker container ls -a 一样

命令:docker rm (container的ID) 和 docker container rm (container的ID)是一样的效果

命令:docker images 和 docker image ls 也是一样的效果

命令:docker image rm (image的ID) 删除某个 image

命令:dokcer rmi (image ID)和 docker image rm (imaged的ID)是一样的

运行centos 容器:docker run -it centos 进入默认centos 

在centos 里可以创建文件,也可以对这个文件进行编辑,同样这个centos 也有yum这个命令

这里顺便解释下vi 和 vim 的区别,因为centos 它本身没有安装vim :

它们都是多模式编译器,不同的是vim 是 vi 的升级版本,它不仅兼容 vi 的所有指令,而且还有一些新的特性在里面

vim 的这些优势主要体现在以下几个方面:

  1. 多级撤销 我们知道在vi里,按u只能撤销上次命令,而在vim 里可以无限制的撤销。

  2. 易用性 vi 只能运行于unix中,而vim不仅可以运行于unix,windows,mac等多操作平台。

  3. 语法加亮 vim可以用不同的颜色来加亮你的代码。

  4. 可视化操作 就是说 vim 不仅可以在终端运行,也可以运行于x window、mac os、windows。

  5. 对 vi 的完全兼容 某些情况下,你可以把vim当成vi来使用。

vi 和 vim 都是Linux中的编译器,不同的是vim 比较高级,可以视为vi 的升级版本。vi 适用于文本编辑,但是vim 更适用于 coding。

vi 有3个模式:插入模式、命令模式、低行模式。

插入模式:在此模式下可以输入字符,按ESC 将回到命令模式

命令模式:可以移动光标、删除字符等。

低行模式:可以保存文件、退出 vi、查找等功能(低行模式也可以看作是命令模式里的)

“Docker中的Container是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI