docker常见命令行用法

news2025/6/7 1:07:37

🧨 一、关闭和清理 Docker 服务相关命令

🔻 docker-compose down

作用:关闭并删除所有使用当前 docker-compose.yml 启动的容器、网络、挂载卷(匿名的)、和依赖关系。

通俗解释:就像你关掉了一个 App,而且清理了它的运行环境(但不会删掉镜像和数据卷)。

举例
假设你有个 Web 服务和数据库,它们通过 docker-compose up 启动:

web -> 容器A
db -> 容器B

运行 docker-compose down 之后,A 和 B 都被关闭并移除。


🔥 docker system prune -af

作用:强制清理所有未使用的:

  • 容器(已停止)
  • 网络(未使用)
  • 镜像(没有被任何容器使用)
  • 构建缓存

-a:包括未被任何容器使用的镜像
-f:不询问确认,直接执行

通俗解释:相当于清理硬盘中的“安装包垃圾”,比如你删除了应用但安装包还在,这命令把它们全清了。

注意!新手提醒

  • 很暴力,不要在生产环境轻易用,会把你没用但还想留的镜像一并删了。

💣 docker volume prune -f

作用:清理所有未被使用的 Docker 卷(volumes)

通俗解释:Docker 卷就是容器的数据硬盘。如果这些硬盘没有在用,就全部删除。


🛠️ 二、重新构建和启动服务

🧱 docker-compose build --no-cache

作用:从头重新构建镜像,不使用任何缓存

通俗解释:就像你从零重新编译一个程序,确保没有缓存影响构建结果。

新手误区提醒

  • 如果你改了 Dockerfile 或依赖库(如 requirements.txt),建议用这个强制更新。

🚀 docker-compose up -d

作用:以“后台”方式启动服务(不会占用当前终端)

  • -d--detach,让容器在后台运行

通俗解释:就像你点击“启动程序”但不让它开窗口,而是在后台运行。


🧾 三、日志查看命令

📄 docker-compose logs -f qdrant

📄 docker-compose logs -f backend

作用:查看指定服务的实时日志输出

  • -f:跟踪(follow)日志,会实时显示日志更新
  • qdrant / backend:服务名称

举例
想看向量数据库 qdrant 的启动过程是否出错:

docker-compose logs -f qdrant

🔁 四、拉取、重构和重启组合命令

🔄 docker-compose down

🔄 docker-compose up -d --build

作用

  • 先关闭服务
  • 然后构建镜像启动

区别说明
相比 up -d,这个命令会重新 build 镜像,相当于加了 --build 的意思。


📥 sudo docker-compose pull

作用:从远程仓库拉取 docker-compose.yml 中定义的镜像

通俗解释:就像你从 Docker Hub 下载最新版程序安装包


🔧 sudo docker-compose build backend frontend

作用:只构建 backendfrontend 两个服务的镜像

用法举例

docker-compose.yml 有三个服务:backend、frontend、redis
你只改了 backend 和 frontend 的代码,就构建这两个即可

🔃 sudo systemctl daemon-reexec

作用:重新执行 systemd 守护进程(不重启系统)

使用场景

  • 安装 Docker 后有问题(比如 systemd 没识别新服务)
  • Docker 无法启动或服务状态异常

🔄 sudo systemctl restart docker

作用:重启 Docker 服务本身,相当于“重启 Docker 引擎”


📦 镜像拉取相关

🧲 sudo docker pull qdrant/qdrant:latest

作用:手动从 Docker Hub 拉取最新版本的 qdrant 镜像


📊 系统状态监控

💾 df -h

作用:查看磁盘使用情况(以人类可读方式显示,如 GB)

新手要看什么?

  • /var/lib/docker 相关挂载是否快满了

🧰 sudo systemctl status docker

作用:查看 Docker 服务当前状态,是否在运行,有没有报错


📋 容器状态检查

🧪 sudo docker-compose ps

作用:列出由 docker-compose 管理的所有容器运行状态

输出示例:

      Name                     Command               State           Ports         
--------------------------------------------------------------------------------
myapp_backend_1    python app.py                Up      0.0.0.0:5000->5000/tcp
myapp_qdrant_1     /qdrant                      Up      0.0.0.0:6333->6333/tcp

🌍 网络信息

🌐 curl ifconfig.me

作用:获取当前主机的公网 IP 地址


🔁 综合部署流程命令组合(重点)

🎯 常见部署顺序

# 1. 清理旧的容器和镜像
docker-compose down
docker system prune -af
docker volume prune -f

# 2. 拉最新镜像
sudo docker-compose pull

# 3. 构建镜像(可选:只构建有改动的服务)
sudo docker-compose build backend frontend

# 4. 启动服务
sudo docker-compose up -d

# 5. 查看服务状态和日志
sudo docker-compose ps
sudo docker-compose logs -f backend

✅ 新手常见混淆点总结

命令含义容器会删吗?镜像会删吗?缓存会删吗?
docker-compose down停掉所有服务并删除容器、网络
docker system prune -af删除所有未使用的东西✅(未运行的)✅(未引用的)
docker-compose build构建镜像✅(重建)
docker-compose build --no-cache从零构建,不用缓存
docker-compose up -d启动服务(不构建)
docker-compose up -d --build启动并重建镜像

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

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

相关文章

Axure设计案例:滑动拼图解锁

设计以直观易懂的操作方式为核心,只需通过简单的滑动动作,将拼图块精准移动至指定位置,即可完成解锁。这种操作模式既符合用户的日常操作习惯,在视觉呈现上,我们精心设计拼图图案,融入生动有趣的元素&#…

MySQL权限详解

在MySQL中,权限管理是保障数据安全和合理使用的重要手段。MySQL提供了丰富的权限控制机制,允许管理员对不同用户授予不同级别的操作权限。本文将会对MySQL中的权限管理,以及内核如何实现权限控制进行介绍。 一、权限级别 MySQL 的权限是分层…

解决fastadmin、uniapp打包上线H5项目路由冲突问题

FastAdmin 基于 ThinkPHP,默认采用 URL 路由模式(如 /index.php/module/controller/action),且前端资源通常部署在公共目录(如 public/)下。Uniapp 的历史模式需要将所有前端路由请求重定向到 index.html&a…

web3-区块链的交互性以及编程的角度看待智能合约

web3-区块链的交互性以及编程的角度看待智能合约 跨链交互性 交互性 用户在某一区块链生态上拥有的资产和储备 ​ 目标:使用户能够把资产和储备移动到另一个区块链生态上 可组合性 使在某一区块链的DAPP能调用另一个区块链上的DAPP 如果全世界都在用以太坊就…

数据结构(7)—— 二叉树(1)

目录 前言 一、 树概念及结构 1.1树的概念 1.2树的相关概念 1.3数的表示 1.二叉树表示 2.孩子兄弟表示法 3.动态数组存储 1.4树的实际应用 二、二叉树概念及结构 2.1概念 2.2特殊的二叉树 1.满二叉树 2. 完全二叉树 2.3二叉树的性质 2.4二叉树的存储结构 1.顺序存储 2.链式存储…

如何使用 Docker 部署grafana和loki收集vllm日志?

环境: Ubuntu20.04 grafana loki 3.4.1 问题描述: 如何使用 Docker 部署grafana和loki收集vllm日志? 解决方案: 1.创建一个名为 loki 的目录。将 loki 设为当前工作目录: mkdir loki cd loki2.将以下命令复制并粘贴到您的命令行中,以将 loki-local-config.yaml …

Kafka入门- 基础命令操作指南

基础命令 主题 参数含义–bootstrap-server连接的Broker主机名称以及端口号–topic操作的topic–create创建主题–delete删除主题–alter修改主题–list查看所有主题–describe查看主题的详细描述–partitions设置分区数–replication-factor设置分区副本–config更新系统默认…

目标检测我来惹1 R-CNN

目标检测算法: 识别图像中有哪些物体和位置 目标检测算法原理: 记住算法的识别流程、解决问题用到的关键技术 目标检测算法分类: 两阶段:先区域推荐ROI,再目标分类 region proposalCNN提取分类的目标检测框架 RC…

lua的笔记记录

类似python的eval和exec 可以伪装成其他格式的文件,比如.dll 希望在异常发生时,能够让其沉默,即异常捕获。而在 Lua 中实现异常捕获的话,需要使用函数 pcall,假设要执行一段 Lua 代码并捕获里面出现的所有错误&#xf…

智能进化论:AI必须跨越的四大认知鸿沟

1. 智能缺口:AI进化中的四大认知鸿沟 1.1 理解物理世界:从像素到因果的跨越 想象一个AI看着一杯倒下的水,它能描述“水滴形状”却无法预测“桌面会湿”。这正是当前AI的典型困境——缺乏对物理世界的因果理解。主流模型依赖海量图像或视频数…

传统足浴行业数字化转型:线上预约平台的技术架构与商业逻辑

上门按摩服务系统开发正成为行业新风口,这绝不是盲目跟风而是实实在在的市场趋势。随着现代人生活节奏加快,时间成本越来越高,传统到店消费模式已经无法满足消费者对便捷服务的需求。我们的团队深耕上门按摩系统开发领域五年,深刻…

从OCR到Document Parsing,AI时代的非结构化数据处理发生了什么改变?

智能文档处理:非结构化数据提出的挑战 在这个时代的每一天,无论是个人处理账单,还是企业处理合同、保险单、发票、报告或成堆的简历,我们都深陷在海量的非结构化数据之中。这类数据不像整齐排列的数据库表格那样规整,…

Inno Setup 安装向导各个页面详解

概览 表中描述了使用Inno Setup生成的安装包在安装过程中各个页面的字段和对应的说明信息。后文会对各个页面的参数做进一步解释说明。 字段说明wpWelcome欢迎页wpLicense许可协议wpPassword密码wpInfoBefore信息wpUserInfo用户信息wpSelectDir选择目标位置wpSelectComponent…

OPENCV重点结构体Mat的讲解

一、Opencv的作用 OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 它轻量级而且高效——由一系列 C 函数和少量 C 类构成,同时提供了Pytho…

【趣味Html】第11课:动态闪烁发光粒子五角星

打造炫酷的动态闪烁发光粒子五角星效果 前言 在现代Web开发中,视觉效果的重要性不言而喻。今天我们将深入探讨如何使用HTML5 Canvas和JavaScript创建一个令人惊艳的动态闪烁发光粒子五角星效果。这个项目不仅展示了Canvas的强大功能,还涉及了粒子系统、…

CFTel:一种基于云雾自动化的鲁棒且可扩展的远程机器人架构

中文标题: CFTel:一种基于云雾自动化的鲁棒且可扩展的远程机器人架构 英文标题: CFTel: A Practical Architecture for Robust and Scalable Telerobotics with Cloud-Fog Automation 作者信息 Thien Tran, Jonathan Kua, Minh Tran, Hongh…

Educational Codeforces Round 179 (Rated for Div. 2)

CF2111,简单手速场 A. Energy Crystals 贪心&#xff0c;每次最小值会乘2&#xff0c;直接模拟即可&#xff0c;复杂度 O ( log ⁡ n ) O(\log n) O(logn) void solve(){int x;cin>>x;multiset<int> s{0,0,0};int res0;while(*s.begin()<x){int x*s.begin();s…

完成一个可交互的k8s管理平台的页面开发

使用deepseek完成设计一个k8s管理平台&#xff0c;关键词如下&#xff1a; 完成一个可交互的k8s管理平台的页面开发Kubernetes 管理平台页面设计 下面是一个基于现代Web技术的可交互Kubernetes管理平台的页面设计方案&#xff0c;使用React作为前端框架&#xff0c;配合Ant De…

Windows系统工具:WinToolsPlus 之 SQL Server 日志清理

使用软件时提示数据库事务日志已满&#xff0c; 使用WinToolsPlus 数据库页签 先设置 数据源 &#xff0c; 选择 需要清理日志的数据库&#xff0c; 点击 数据库日志清理 即可。 下载地址&#xff1a; http://v.s3.sh.cn/archives/2279.html

在Windows11上安装 Ubuntu WSL

不想安装虚拟机,想在Windows11上运行Linux。网上虽有教程,但是图片明显都是老图,与Windows11还是有些差异。网上缺乏一个齐全的真正的Windows11运行Linux的教程。 一、在Windows上的设置 1. 在window11的搜索框内(所有你找不到的应用都可以用这个搜索功能)&#xff0c;搜索&q…