docker常用命令及案例
以下是 Docker 的所有常用命令及其案例说明,按功能分类整理:
1. 镜像管理
1.1 拉取镜像
- 命令:
docker pull <镜像名>:<标签>
- 案例: 拉取官方的
nginx
镜像docker pull nginx:latest
1.2 列出本地镜像
- 命令:
docker images
- 案例: 查看本地所有镜像
docker images
1.3 删除镜像
- 命令:
docker rmi <镜像ID>
- 案例: 删除镜像 ID 为
abc123
的镜像docker rmi abc123
1.4 构建镜像
- 命令:
docker build -t <镜像名> <Dockerfile路径>
- 案例: 在当前目录构建一个名为
myapp
的镜像docker build -t myapp .
1.5 查看镜像历史
- 命令:
docker history <镜像名>
- 案例: 查看
nginx
镜像的构建历史docker history nginx
1.6 打包镜像为 tar 文件
- 命令:
docker save -o <文件名>.tar <镜像名>
- 案例: 将
myapp
镜像打包为myapp.tar
docker save -o myapp.tar myapp
1.7 从 tar 文件加载镜像
- 命令:
docker load -i <文件名>.tar
- 案例: 从
myapp.tar
文件加载镜像docker load -i myapp.tar
2. 容器管理
2.1 启动容器
- 命令:
docker run <选项> <镜像名>
- 案例: 启动一个
nginx
容器并映射端口docker run -d -p 8080:80 nginx
2.2 列出运行中的容器
- 命令:
docker ps
- 案例: 查看当前运行中的容器
docker ps
2.3 列出所有容器
- 命令:
docker ps -a
- 案例: 查看所有容器(包括已停止的)
docker ps -a
2.4 停止容器
- 命令:
docker stop <容器ID>
- 案例: 停止容器 ID 为
123abc
的容器docker stop 123abc
2.5 启动已停止的容器
- 命令:
docker start <容器ID>
- 案例: 启动容器 ID 为
123abc
的容器docker start 123abc
2.6 重启容器
- 命令:
docker restart <容器ID>
- 案例: 重启容器 ID 为
123abc
的容器docker restart 123abc
2.7 删除容器
- 命令:
docker rm <容器ID>
- 案例: 删除容器 ID 为
123abc
的容器docker rm 123abc
2.8 进入容器
- 命令:
docker exec -it <容器ID> /bin/bash
- 案例: 进入容器 ID 为
123abc
的容器docker exec -it 123abc /bin/bash
2.9 查看容器日志
- 命令:
docker logs <容器ID>
- 案例: 查看容器 ID 为
123abc
的日志docker logs 123abc
2.10 查看容器详细信息
- 命令:
docker inspect <容器ID>
- 案例: 查看容器 ID 为
123abc
的详细信息docker inspect 123abc
2.11 导出容器为 tar 文件
- 命令:
docker export -o <文件名>.tar <容器ID>
- 案例: 将容器 ID 为
123abc
的容器导出为container.tar
docker export -o container.tar 123abc
2.12 从 tar 文件导入为镜像
- 命令:
docker import <文件名>.tar <镜像名>:<标签>
- 案例: 从
container.tar
文件导入为镜像myimage:latest
docker import container.tar myimage:latest
3. 网络管理
3.1 列出网络
- 命令:
docker network ls
- 案例: 查看所有 Docker 网络
docker network ls
3.2 创建网络
- 命令:
docker network create <网络名>
- 案例: 创建一个名为
mynetwork
的网络docker network create mynetwork
3.3 连接容器到网络
- 命令:
docker network connect <网络名> <容器ID>
- 案例: 将容器 ID 为
123abc
的容器连接到mynetwork
网络docker network connect mynetwork 123abc
3.4 断开容器与网络的连接
- 命令:
docker network disconnect <网络名> <容器ID>
- 案例: 断开容器 ID 为
123abc
的容器与mynetwork
网络的连接docker network disconnect mynetwork 123abc
3.5 删除网络
- 命令:
docker network rm <网络名>
- 案例: 删除名为
mynetwork
的网络docker network rm mynetwork
4. 数据卷管理
4.1 创建数据卷
- 命令:
docker volume create <卷名>
- 案例: 创建一个名为
mydata
的数据卷docker volume create mydata
4.2 列出数据卷
- 命令:
docker volume ls
- 案例: 查看所有数据卷
docker volume ls
4.3 查看数据卷详细信息
- 命令:
docker volume inspect <卷名>
- 案例: 查看
mydata
数据卷的详细信息docker volume inspect mydata
4.4 删除数据卷
- 命令:
docker volume rm <卷名>
- 案例: 删除名为
mydata
的数据卷docker volume rm mydata
5. Docker Compose
5.1 启动服务
- 命令:
docker-compose up
- 案例: 启动
docker-compose.yml
中定义的服务docker-compose up
5.2 停止服务
- 命令:
docker-compose down
- 案例: 停止并删除
docker-compose.yml
中定义的服务docker-compose down
5.3 查看服务状态
- 命令:
docker-compose ps
- 案例: 查看
docker-compose.yml
中定义的服务状态docker-compose ps
5.4 构建服务
- 命令:
docker-compose build
- 案例: 构建
docker-compose.yml
中定义的服务镜像docker-compose build
5.5 启动服务(后台模式)
- 命令:
docker-compose up -d
- 案例: 在后台启动
docker-compose.yml
中定义的服务docker-compose up -d
6. 系统信息
6.1 查看 Docker 版本
- 命令:
docker --version
- 案例: 查看 Docker 版本
docker --version
6.2 查看 Docker 系统信息
- 命令:
docker info
- 案例: 查看 Docker 系统信息
docker info
6.3 查看 Docker 磁盘使用情况
- 命令:
docker system df
- 案例: 查看 Docker 磁盘使用情况
docker system df
7. 清理
7.1 清理未使用的镜像、容器、网络
- 命令:
docker system prune
- 案例: 清理未使用的资源
docker system prune
7.2 清理所有未使用的资源
- 命令:
docker system prune -a
- 案例: 清理所有未使用的资源(包括未使用的镜像)
docker system prune -a
以上是 Docker 的常用命令及其案例说明,涵盖了镜像、容器、网络、数据卷、Docker Compose 和系统管理等核心功能。
相关文章:
docker常用命令及案例
以下是 Docker 的所有常用命令及其案例说明,按功能分类整理: 1. 镜像管理 1.1 拉取镜像 命令: docker pull <镜像名>:<标签>案例: 拉取官方的 nginx 镜像docker pull nginx:latest1.2 列出本地镜像 命令: docker images案例: 查看本地所有…...

DeepSeek-R1 云环境搭建部署流程
DeepSeek横空出世,在国际AI圈备受关注,作为个人开发者,AI的应用可以有效地提高个人开发效率。除此之外,DeepSeek的思考过程、思考能力是开放的,这对我们对结果调优有很好的帮助效果。 DeepSeek是一个基于人工智能技术…...

Java_双列集合
双列集合特点 存放的是键值对对象(Entry) Map 因为都是继承Map,所以要学会这些API,后面的类就都知道了 put 有两个操作,添加(并返回null)或者覆盖(返回被覆盖的值)…...
.net的一些知识点6
1.写个Lazy<T>的单例模式 public class SingleInstance{private static readonly Lazy<SingleInstance> instance new Lazy<SingleInstance>(() > new SingleInstance());private SingleInstance(){}public static SingleInstance Instace > instance…...

无须付费,安装即是完全版!
不知道大家有没有遇到过不小心删掉了电脑上超重要的文件,然后急得像热锅上的蚂蚁? 别担心,今天给大家带来一款超给力的数据恢复软件,简直就是拯救文件的“救星”! 数据恢复 专业的恢复数据软件 这款软件的界面设计得特…...

常见数据库对象与视图VIEW
常见的数据库对象 表 TABLE 数据字典 约束 CONSTRAINT 视图 VIEW 索引 INDEX 存储过程 PROCESS 存储函数 FUNCTION 触发器 TRIGGER 视图VIEW 1、引入 为什么使用视图? 视图可以帮助我们使用表的一部分,针对不同的用户制定不同的查询视图。 …...

【Vue2】vue2项目中如何使用mavon-editor编辑器,数据如何回显到网页,如何回显到编辑器二次编辑
参考网站: 安装使用参考:vue2-常用富文本编辑器使用介绍 html网页展示、编辑器回显二次编辑参考:快速搞懂前端项目如何集成Markdown插件mavon-editor,并回显数据到网页 安装命令 npm install mavon-editor2.9.1 --save全局配置 …...
2、Python面试题解析:如何进行字符串插值?
Python字符串插值详解 字符串插值是将变量或表达式嵌入字符串中的一种技术,Python提供了多种方式实现字符串插值。以下是常见的几种方法及其详细解析和代码示例。 1. 百分号(%)格式化 这是Python早期版本中的字符串插值方法,类似…...

计算机网络-SSH基本原理
最近年底都在忙,然后这两天好点抽空更新一下。前面基本把常见的VPN都学习了一遍,后面的内容应该又继续深入一点。 一、SSH简介 SSH(Secure Shell,安全外壳协议)是一种用于在不安全网络上进行安全远程登录和实现其他安…...
doris:MySQL 兼容性
Doris 高度兼容 MySQL 语法,支持标准 SQL。但是 Doris 与 MySQL 还是有很多不同的地方,下面给出了它们的差异点介绍。 数据类型 数字类型 类型MySQLDorisBoolean- 支持 - 范围:0 代表 false,1 代表 true- 支持 - 关键字&am…...
mysql 存储过程和自定义函数 详解
首先创建存储过程或者自定义函数时,都要使用use database 切换到目标数据库,因为存储过程和自定义函数都是属于某个数据库的。 存储过程是一种预编译的 SQL 代码集合,封装在数据库对象中。以下是一些常见的存储过程的关键字: 存…...
C++ 中的 cJSON 解析库:用法、实现及递归解析算法与内存高效管理
在现代软件开发中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,因其易于阅读和编写、易于机器解析和生成的特性,被广泛应用于各种场景。C 作为一种强大的编程语言,自然也需要一个高效的…...
websocket自动重连封装
websocket自动重连封装 前端代码封装 import { ref, onUnmounted } from vue;interface WebSocketOptions {url: string;protocols?: string | string[];reconnectTimeout?: number; }class WebSocketService {private ws: WebSocket | null null;private callbacks: { [k…...
【C语言】球球大作战游戏
目录 1. 前期准备 2. 玩家操作 3. 生成地图 4. 敌人移动 5. 吃掉小球 6. 完整代码 1. 前期准备 游戏设定:小球的位置、小球的半径、以及小球的颜色 这里我们可以用一个结构体数组来存放这些要素,以方便初始化小球的信息。 struct Ball {int x;int y;float r;DWORD c…...
人工智能D* Lite 算法-动态障碍物处理、多步预测和启发式函数优化
在智能驾驶领域,D* Lite 算法是一种高效的动态路径规划算法,适用于处理环境变化时的路径重规划问题。以下将为你展示 D* Lite 算法的高级用法,包含动态障碍物处理、多步预测和启发式函数优化等方面的代码实现。 代码实现 import heapq impo…...
MySQL 8版本认证问题
目录 问题: Public Key Retrieval is not allowed原因: mysql 8.0 调整身份认证机制解决方法(三种) 问题: Public Key Retrieval is not allowed 连接MySQL8数据库的时候,报错内容如下:“Publi…...
Android 开发APP中参数配置与读取总结
以使用MQTT配置的参数 MQTT_BROKER_UR 、MQTT_USER_NAME、 MQTT_PASSWORD为例,说明配置设置和读取应用 项目中使用系统参数(如环境变量和gradle.properties文件中的属性)在Gradle构建脚本中,以下是一个详细的操作文档资料&…...
Scala 语法入门
Scala语法入门 1. 定义变量2. 定义方法3. 闭包4. 声明字符串5. 声明数组6. 声明集合7. 异常处理 1. 定义变量 (变量的类型在变量名之后等号之前声明) 不可变变量(val) 类似于 Java 中的 final 变量,即一旦赋值后,其值不能再被改…...
python中的flask框架
Flask 是一个用Python编写的轻量级Web应用框架 基于WSGI和Jinja2模板引擎 被称为“微框架”,其核心功能简单,不捆绑数据库管理、表单验证等功能,而是通过扩展来增加其他功能 Flask提供最基本的功能,不强制使用特定工具或库 通…...

【redis】缓存设计规范
本文是 Redis 键值设计的 14 个核心规范与最佳实践,按重要程度分层说明: 一、通用数据类型选择 这里我们先给出常规的选择路径图。 以下是对每个步骤的分析: 是否需要排序?: zset(有序集合)用…...

学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...

vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...

从物理机到云原生:全面解析计算虚拟化技术的演进与应用
前言:我的虚拟化技术探索之旅 我最早接触"虚拟机"的概念是从Java开始的——JVM(Java Virtual Machine)让"一次编写,到处运行"成为可能。这个软件层面的虚拟化让我着迷,但直到后来接触VMware和Doc…...
深入理解 React 样式方案
React 的样式方案较多,在应用开发初期,开发者需要根据项目业务具体情况选择对应样式方案。React 样式方案主要有: 1. 内联样式 2. module css 3. css in js 4. tailwind css 这些方案中,均有各自的优势和缺点。 1. 方案优劣势 1. 内联样式: 简单直观,适合动态样式和…...

【Java多线程从青铜到王者】单例设计模式(八)
wait和sleep的区别 我们的wait也是提供了一个还有超时时间的版本,sleep也是可以指定时间的,也就是说时间一到就会解除阻塞,继续执行 wait和sleep都能被提前唤醒(虽然时间还没有到也可以提前唤醒),wait能被notify提前唤醒…...
Java中栈的多种实现类详解
Java中栈的多种实现类详解:Stack、LinkedList与ArrayDeque全方位对比 前言一、Stack类——Java最早的栈实现1.1 Stack类简介1.2 常用方法1.3 优缺点分析 二、LinkedList类——灵活的双端链表2.1 LinkedList类简介2.2 常用方法2.3 优缺点分析 三、ArrayDeque类——高…...