常用命令之docker生命周期管理和镜像管理命令

news2025/1/21 12:22:28

一、docker简介

  Docker是一个开源的容器化平台,用于构建、部署和管理应用程序。它使用容器技术来将应用程序及其依赖项打包为一个独立的可移植容器,可以在不同的环境中运行,而不需要依赖特定的操作系统或硬件。
  Docker的主要特点包括:

  • 快速部署:Docker容器可以在几秒钟内启动,相比于传统的虚拟机技术,具有更快的启动速度和更小的资源消耗。
  • 轻量级:Docker容器共享主机操作系统的内核,因此可以更高效地利用系统资源,并且容器本身也比虚拟机映像更小巧。
  • 环境一致性:通过使用Docker容器,可以确保应用程序在不同的环境中具有一致的运行结果,避免了由于环境差异导致的问题。
  • 可移植性:Docker容器可以在不同的环境中运行,包括物理机、虚拟机、云服务器等,提供了更大的灵活性和可移植性。
  • 简化部署和管理:Docker提供了一套简单易用的命令行工具和API,可以方便地创建、部署和管理容器,大大简化了应用程序的部署和管理流程。

  总之,Docker通过容器技术提供了一种轻量级、快速部署和可移植的应用程序运行环境,极大地简化了应用程序的部署和管理过程,提高了开发和运维的效率。

二、docker生命周期管理命令

1、docker run创建一个容器并启动

  docker run命令是使用镜像创建一个容器并启动,使用-it参数以交换模式运行容器,创建后自动进入了容器,退出容器后容器停止运行。如果需要容器后台继续运行使用-itd参数。

[root@yws55 ~]# docker run -it --name rtest ubuntu:latest
root@55ea2b8cb24f:/# exit
[root@yws55 ~]# docker run -itd --name r3 ubuntu:latest
88749d15d10d5746dad7d0b9bb333adc8ea3cac4fd2b6cb8b8d68bea2955321d

2、docker create创建一个容器但不启动

  docker create创建容器和docker run参数几乎是一样的,区别就是一个创建后启动容器,而docker create创建容器后状态为created。
在这里插入图片描述

[root@yws55 ~]# docker create -it --name r2 ubuntu:latest
49f7e82c0bd8c2048983e8aca81b10c04274639a8cb25eea9575b860be50036e

3、docker start/stop/restart容器启停

  使用docker start启动一个已经创建好的容器,docker stop停止一个正在运行的容器,docker restart重启一个正在运行的容器。

[root@yws55 ~]# docker stop utest
utest
[root@yws55 ~]# docker start utest
utest
[root@yws55 ~]# docker restart utest
utest

4、docker kill杀死一个容器进程

  一般情况下我们使用docker stop正常停止容器运行就好了,只有在无法正常停止容器的情况下使用docker kill杀死容器进程的方式停止指定容器。
在这里插入图片描述

[root@yws55 ~]# docker kill utest
utest

5、docker rm删除容器

  如果容器正在运行则通过docker rm无法删除,可以使用-f参数强制删除,相当于先执行docker kill停止容器然后删除。

[root@yws55 ~]# docker rm rtest
rtest

6、docker pause/unpause暂停或者恢复容器运行

  docker pause可以暂停容器运行,暂停后容器无法提供服务和连接;使用docker unpause恢复后可以连接。
在这里插入图片描述

[root@yws55 ~]# docker pause utest
utest
[root@yws55 ~]# docker exec -it utest /bin/bash
Error response from daemon: Container utest is paused, unpause the container before exec
[root@yws55 ~]# docker unpause utest
utest
[root@yws55 ~]# docker exec -it utest /bin/bash
root@c4b4e6b8e891:/#

7、docker exec容器中执行命令

  docker exec命令用于在容器中执行命令,常用docker exec -it container_name /bin/bash登录一个容器。也使用使用-d参数后台执行命令,常用于执行容器中的shell脚本。
在这里插入图片描述

三、docker镜像管理命令

1、docker images查看镜像

  docker images可以查看本地的镜像,后面可以跟镜像类型查看指定类型的镜像,比如docker images ubuntu查看Ubuntu镜像。

[root@yws55 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu nginx 5fb077dc7894 4 weeks ago 181MB
ubuntu latest 08d22c0ceb15 4 months ago 77.8MB

2、docker search搜索镜像

  使用docker search可以在线搜索可以下载的镜像。
在这里插入图片描述

3、docker pull拉取镜像

  使用docker pull拉取镜像,命令格式为docker pull name[:TAG],默认拉取最新版镜像。

[root@yws55 ~]# docker pull mysql:latest
latest: Pulling from library/mysql

5baa702110e4: Pull complete
Digest: sha256:232936eb036d444045da2b87a90d48241c60b68b376caf509051cb6cffea6fdc
Status: Downloaded newer image for mysql:latest
docker.io/library/mysql:latest
[root@yws55 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest 041315a16183 40 hours ago 565MB

4、docker build创建镜像

  使用docker build命令可以创建一个镜像,这种方式的镜像是基于基础镜像创建一个满足自己需求的个性化镜像,如下例子根据Ubuntu最新镜像创建一个安装了vim命令的镜像。
在这里插入图片描述

5、docker history查看镜像创建记录

  docker history命令可以查看镜像的创建记录,如build方式创建的镜像可以看到镜像的下载、命令安装、环境设置等步骤的创建记录。
在这里插入图片描述

6、docker save保存镜像为归档文件

  我们可以docker save方式将docker镜像保存为tar包文件,此方式主要用于镜像文件的离线安装。

[root@yws55 home]# docker save -o /home/ubuntu.vim.tar ubuntu:vim
[root@yws55 home]# ll -h |grep ubuntu
-rw------- 1 root root 184M Jul 6 16:37 ubuntu.vim.tar

7、docker load导入归档文件镜像

  使用docker load可以导入归档文件镜像到本地镜像列表中,常用于镜像文件的离线安装。

[root@yws55 home]# docker load -i /home/ubuntu.vim.tar
Loaded image: ubuntu:vim

8、docker import从归档文件创建镜像

  使用docker import命令根据归档文件创建镜像,可以在tar包文件基础上创建新镜像。

[root@yws55 home]# docker import -m “install net-tools” -c “CMD apt-get install -y net-tools” /home/ubuntu.vim.tar ubuntu:vim_v2
sha256:8c1256bf76846461c50f4371c05e4b745014446d37560f20d1497ce403cac2b0
[root@yws55 home]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu vim_v2 8c1256bf7684 21 seconds ago 192MB

9、docker rmi删除镜像

  使用docker rmi可以删除不需要的镜像文件。

[root@yws55 home]# docker rmi ubuntu:vim
Untagged: ubuntu:vim
Deleted: sha256:a4194cac0dd51f5864847f78af9b3c5678841cc24677ecfe8b84ac1393365609

四、其他命令

1、docker version查看版本

  docker version命令可以查看docker系统的版本,包括客户端和服务端版本信息。

[root@yws55 ~]# docker version
Client: Docker Engine - Community
Version: 23.0.1

Server: Docker Engine - Community
Engine:
Version: 23.0.1

2、docker info查看docker系统信息

  docker info命令可以查看docker系统的基本信息,包括宿主机的操作系统类型;CPU、内存等资源信息;容器和镜像数量等信息。

[root@yws55 ~]# docker info
Server:
Containers: 2
Running: 1
Paused: 0
Stopped: 1
Images: 2

Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 7.638GiB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/943161.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

poi-tl设置图片

选中图片右击 选择设置图片格式

有哪些情感书单素材?怎么制作成视频?

如果你想要制作一段能够引起观众共鸣的情感书单视频,你需要准备哪些素材呢?下面我们将介绍制作情感书单视频的素材和方法。 情感书单素材 书籍封面 制作情感书单视频的第一个素材是书籍封面。封面上的图案能够很好地表达书本的主题和情感,是…

Hadoop HA模式切换

Hadoop HA模式下 主从的切换(操作命令) YARN HA 获取所有RM节点的状态 yarn rmadmin -getAllServiceState获取 rm1 节点的状态 yarn rmadmin -getServiceState rm1手动将 rm1 的状态切换到STANDBY yarn rmadmin -transitionToStandby rm1 ##或者 y…

5年经验之谈 —— 性能测试中故障排查及解决方法!

引言: 在进行性能测试过程中,同事反馈报错率突然攀升。通过查看相关日志和服务器状态,发现了一些关键信息。本文将详细介绍导致报错率攀升的原因,并提供相应的解决方法。 1. 问题背景 在使用JMeter进行性能测试时,我…

vue、elementui控制前一级选择后,后一级才会有数据

<el-form-item label"废物类型&#xff1a;"><el-select clearable v-model"queryForm.hswCateType" placeholder"请选择" change"industryCategoryChange" focus"industryCategoryFocus"><el-option v-for&…

微软用 18 万行 Rust 重写了 Windows 内核

微软正在使用 Rust 编程语言重写其核心 Windows 库。 5 月 11 日——Azure 首席技术官 Mark Russinovich 表示&#xff0c;最新的 Windows 11 Insider Preview 版本是第一个包含内存安全编程语言 Rust 的版本。 “如果你参加了 Win11 Insider 环&#xff0c;你将在 Windows 内…

C语言“牵手”天猫商品详情数据方法,天猫商品详情API接口申请指南

天猫商城平台是阿里巴巴集团旗下的一个综合性购物网站。 天猫商城的前身是淘宝商城&#xff0c;于2012年1月11日上午更名。天猫是一个整合数千家品牌商、生产商&#xff0c;为商家和消费者之间提供一站式解决方案的B2C&#xff08;Business-to-Consumer&#xff0c;商业零售&a…

干货!证书超实用小Tips

1.CSA 是加拿大标准协会(Canadian Standards Association)的简称&#xff0c;它成立于1919年&#xff0c;是加拿大首家专为制定工业标准的非盈利性机构。在北美市场上销售的电子、电器等产品都需要取得安全方面的认证。 2.EAC认证 是海关联盟国家的认证。海关联盟是由俄罗斯…

C# WPF监听USB插入拨出

可以全部监听。好用 private void FormF100WriteCortexLicense_Load(object sender, EventArgs e){this.Text this.Text " " FT_Tools.Program.version;USB USBWatcher new USB();USBWatcher.AddUSBEventWatcher(USBEventHandler, USBEventHandler, new TimeSpa…

【MongoDB系列】3. MongoDB 安全策略:验证和授权

前言 前面文章中通过客户端工具&#xff08;MongoDB Shell、Robo 3T&#xff09;连接 MongoDB 服务时&#xff0c;只要有 IP 地址和端口号&#xff0c;就能连接到数据库&#xff0c;之后就能操作数据库。这是因为默认安装的 MongoDB 没有启用身份验证&#xff0c;也没有设置初…

PlotAI = Matplotlib + AI

PlotAI是在 Python 和 Matplotlib 中创建绘图的最简单方法&#xff0c;它使用 LLM 生成Python代码和Matplotlib绘图。 推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景 1、PlotAI简介 PlotAI的思路&#xff1a; 用户提供输入数据框和提示。PlotAI 构建了 LLM 的提示&…

代码随想录打卡—day46—【DP】— 8.29 背包END

1 139. 单词拆分 139. 单词拆分 做了很久...估计2h 一开始我的思路卡死了 看题解之后的思路的详解见注释&#xff0c; 我的写法和carl 答案在一些微小的细节上略有不同&#xff0c;我的更好理解&#xff0c;但他的解法更简单。 我写的过程中&#xff0c;需要注意下标和字符…

记一次空字符串判断的大坑

1. 控制台打印数据如下 2.尝试做判断 如图我肉眼看到的是 " " 于是我做了如下判断 结果竟然是false 我做了修改 竟然还是false 3. 开始各种转数据类型 发现了问题,空字符串的布尔值应该是false,但是这个玩意儿是true 4. 查看数据 我发现在往控制台粘贴数据时,是个…

SAP SD之如何定义销售组织(Sales Organization)

目录 前言 一、注意点 二、创建步骤 1.Step By Step 总结 前言 SAP中的销售组织是SD中的最高级别组织单位&#xff0c;负责公司中发生的所有销售和服务活动。销售组织是根据公司的销售需求在SAP中定义的。控制向客户销售、谈判销售等条款。它只能分配给一个公司代码和一个…

Python(Web时代)—— Django数据库整合

简介 ORM框架介绍 ORM&#xff08;Object Relation Mapping&#xff09;框架&#xff0c;可以帮助我们把类和数据表进行一个映射&#xff0c;让我们可以通过类和类对象来直接操作数据库中的数据。 优势&#xff1a;根据对接的数据库引擎翻译成对应的sql语句&#xff0c;所以…

平均值和方差的点估计、区间估计

0&#xff0c;预备知识 0.1&#xff0c;中心极限定理 0.2&#xff0c;均值的标准误差 0.3&#xff0c;卡方分布 1&#xff0c;总体均值的无偏估计量 2.1&#xff0c;当总体方差已知时对样本均值的描述&#xff08;Z统计量&#xff09; 2.2&#xff0c;当总体方差未知时对样本均…

RabbitMq深度学习

什么是RabbitMq? RabbitMQ是一个开源的消息队列中间件&#xff0c;它实现了高级消息队列协议&#xff08;AMQP&#xff09;。它被广泛用于分布式系统中的消息传递和异步通信。RabbitMQ提供了一种可靠的、可扩展的机制来传递消息&#xff0c;使不同的应用程序能够相互之间进行…

成都优优聚:美团代运营趋势在哪儿?

美团代运营作为一种经营模式&#xff0c;在当今日益竞争激烈的市场中扮演着重要的角色。它为商家提供了全方位的服务&#xff0c;从市场推广到订单管理&#xff0c;从团购券的制作到售后服务&#xff0c;帮助商家解决了运营中的各种难题。 首先&#xff0c;美团代运营的核心优势…

重磅OpenAI发布ChatGPT企业版本

8月29日凌晨&#xff0c;Open AI官网发布ChatGPT企业版本&#xff01; 企业版简介&#xff1a; ChatGPT企业版提供企业级安全和隐私、无限的高速 GPT-4 访问、用于处理更长输入的更长上下文窗口、高级数据分析功能、自定义选项等等。人工智能可以协助和提升我们工作生活的各个…

DEA创建maven项目,项目结构无src目录和pom.xml文件内容

File > Settings > Build,Execution,Deployment > Build Tools > Maven > Runnner,界面中VM Options 输入框中填入-DarchetypeCataloginternal&#xff0c;重启IDEA&#xff0c;打开即会有src目录和pom.xml文件。 -DarchetypeCataloginternal -DarchetypeCatal…