热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Docker相似的命令与区别

killvsstop两个命令都是停止docker,不同之处在于:dockerstop:先发SIGTERM信号给docker,允许其在一

kill vs stop

两个命令都是停止docker,不同之处在于:

  • docker stop: 先发SIGTERM信号给docker,允许其在一定时间(默认10s)内进行一些操作(例如资源回收),若这段时间内容器未停止,则发送SIGKILL信号强行杀死容器;
  • docker kill: 直接发送SIGKILL信号杀死容器。

SIGTERMSIGKILL的区别在于,前者是告知你的租期到了,请你赶紧收拾行李离开;后者是你的租期到了,直接将你扫地出门。

简而言之,相比kill,stop给了容器自行处理结束的时间,更为优雅

run vs start


  • docker run: 从镜像启动一个容器;
  • docker start: 运行已停止的容器。

例如你需要从docker images列表中启动一个镜像,你需要执行

docker run

你在该镜像中做了某些修改,然后结束(kill/stop)该容器,通过docker ps -a可以看到一个状态为EXITED的容器,此时你可以通过执行

docker start

再次启动该容器。通过start启动的容器会保留上一次结束前做的变动,不会像run一样执行的是全新的容器。

export vs save


  • docker export: 持久化容器,类似给一个虚拟机打快照,会保留容器启动后的一系列修改;
  • docker save: 持久化一个镜像,只是将镜像导出,如果通过镜像启动容器,那么容器中的修改并不会写入镜像中,也因此不会被save。

要注意的是,export导出后的镜像会丢失历史,等于没法回滚到以前的某个状态,而save则保留全部的历史;也因此,export导出后的镜像更小。

另外,export一次只能导出一个容器,而save可以一次性导出多个镜像。

实际使用中,仅仅导出镜像使用save,而如果对容器做了修改后需要保存,可以export,也可以先commit再save。

import vs load


  • docker import: 从一个tar包创建一个镜像,可以指定新的NAME:TAG;
  • docker load: 可以同时将多个tar包导入到仓库中,不可指定新的NAME:TAG。

二者几乎与export/save相呼应,若将save保存的tar包镜像用import导入回去,那么新生成的镜像会丢失原来镜像的历史。

rm vs rmi


  • docker rm : 删除容器
  • docker rmi : 删除镜像

image vs container

如果你是一个刚接触Docker的新手,那么你可能会对这两者有疑惑。

其实很容易区分二者,image即镜像,类似操作系统的iso文件,而container则是用这iso文件安装好的一个操作系统。

参考

[1] Use the Docker command line, Docker Documentation
[2] what's the difference between docker stop and docker kill?, superuse, Steffen Opel
[3] What is the difference between save and export in Docker?, Stack Overflow, mbarthelemy
[4] Difference between save and export, Thomas
[5] What is the difference between import and load in Docker?, Stack Overflow, VonC


推荐阅读
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • Postgresql备份和恢复的方法及命令行操作步骤
    本文介绍了使用Postgresql进行备份和恢复的方法及命令行操作步骤。通过使用pg_dump命令进行备份,pg_restore命令进行恢复,并设置-h localhost选项,可以完成数据的备份和恢复操作。此外,本文还提供了参考链接以获取更多详细信息。 ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • 本文介绍了在wepy中运用小顺序页面受权的计划,包含了用户点击作废后的从新受权计划。 ... [详细]
  • MPLS VP恩 后门链路shamlink实验及配置步骤
    本文介绍了MPLS VP恩 后门链路shamlink的实验步骤及配置过程,包括拓扑、CE1、PE1、P1、P2、PE2和CE2的配置。详细讲解了shamlink实验的目的和操作步骤,帮助读者理解和实践该技术。 ... [详细]
  • 本文记录了在vue cli 3.x中移除console的一些采坑经验,通过使用uglifyjs-webpack-plugin插件,在vue.config.js中进行相关配置,包括设置minimizer、UglifyJsPlugin和compress等参数,最终成功移除了console。同时,还包括了一些可能出现的报错情况和解决方法。 ... [详细]
  • 本文介绍了如何使用vue-awesome-swiper组件,包括在main.js中引入和使用swiper和swiperSlide组件,以及设置options和ref属性。同时还介绍了如何在模板中使用swiper和swiperSlide组件,并展示了如何通过循环渲染swipes数组中的数据,并使用picUrl属性显示图片。最后还介绍了如何添加分页器。 ... [详细]
  • 本文介绍了如何使用elementui分页组件进行分页功能的改写,只需一行代码即可调用。通过封装分页组件,避免在每个页面都写跳转请求的重复代码。详细的代码示例和使用方法在正文中给出。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • Python已成为全球最受欢迎的编程语言之一,然而Python程序的安全运行存在一定的风险。本文介绍了Python程序安全运行需要满足的三个条件,即系统路径上的每个条目都处于安全的位置、"主脚本"所在的目录始终位于系统路径中、若python命令使用-c和-m选项,调用程序的目录也必须是安全的。同时,文章还提出了一些预防措施,如避免将下载文件夹作为当前工作目录、使用pip所在路径而不是直接使用python命令等。对于初学Python的读者来说,这些内容将有所帮助。 ... [详细]
  • 本文介绍了利用ARMA模型对平稳非白噪声序列进行建模的步骤及代码实现。首先对观察值序列进行样本自相关系数和样本偏自相关系数的计算,然后根据这些系数的性质选择适当的ARMA模型进行拟合,并估计模型中的位置参数。接着进行模型的有效性检验,如果不通过则重新选择模型再拟合,如果通过则进行模型优化。最后利用拟合模型预测序列的未来走势。文章还介绍了绘制时序图、平稳性检验、白噪声检验、确定ARMA阶数和预测未来走势的代码实现。 ... [详细]
  • 在加载一个第三方厂商的dll文件时,提示“找不到指定模块,加载失败”。由于缺乏必要的技术支持,百思不得期间。后来发现一个有用的工具 ... [详细]
  • Introduction(简介)Forbeingapowerfulobject-orientedprogramminglanguage,Cisuseda ... [详细]
author-avatar
手机用户2502894533
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有