ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

dtop 使用指南:Dozzle 的终端实时容器监控搭档

dtop 使用指南:Dozzle 的终端实时容器监控搭档 dtop 使用指南Dozzle 的终端实时容器监控搭档【免费下载链接】dozzleRealtime log viewer for containers. Supports Docker, Swarm and K8s.项目地址: https://gitcode.com/GitHub_Trending/do/dozzledtop是 Dozzle 官方文档中推荐使用的命令行搭档工具它把当前机器上哪些容器在运行、有没有出问题这件事带进终端以实时刷新的方式呈现可以常驻在 tmux 窗格里随时瞄一眼。本文基于本仓库的 dtop 文档法语版、中文版与英文版内容一致结合 Dozzle 仓库中的连接与检索相关实现说明 dtop 的定位、安装方式、连接模型以及它与 Dozzle 浏览器端功能的分工边界读完后你将清楚什么场景该用 dtop、什么场景该切回 Dozzle。dtop 是什么比 docker ps 更丰富的实时容器视图按照 Dozzle 仓库 README 的介绍dtop 是 a top-like application for monitoring Docker containers即一款用于监控 Docker 容器的 top 风格应用并且它与 Dozzle 集成可以直接链接到容器日志。更通俗地说官方文档把它定位为docker ps的增强版richerdocker ps实时性与docker ps的一次性快照不同dtop 会持续刷新动态展示系统上正在运行的 Docker 容器适合长期挂在终端里观察变化常驻场景文档特别建议把它留在一个 tmux 窗格里leave open in a tmux pane配合 tmux 的分屏与会话保持能力运维人员可以在一个终端会话里持续盯住容器状态而无需反复敲命令或切换页面与 Dozzle 打通当你在终端里发现某个容器需要进一步排查时dtop 支持直接跳转到 Dozzle 查看该容器的完整日志实现终端概览 → 浏览器深挖的工作流见 README 中 It integrates with Dozzle to link directly to container logs 的说明。需要说明的是dtop 是一个独立于 Dozzle 的伴生项目它在独立仓库中开发、按自己的节奏发布。本文描述的是 Dozzle 官方文档视角下的 dtop其具体快捷键、界面布局等细节以 dtop 自身仓库的发布版本为准。连接方式ssh、tcp 与本地 unix socketdtop 支持三种方式连接 Docker 主机这与 Dozzle 自身支持的多主机拓扑保持一致连接方式适用场景unix socket连接本机 Docker默认路径/var/run/docker.sock零额外配置tcp通过 TCP 协议连接远程 Docker daemon适用于跨主机监控ssh借助 SSH 通道连接远端主机复用已有的 SSH 认证体系官方文档特别强调dtop 适合与 Dozzle 相同的多主机配置well suited for the same multi-host setups Dozzle supports。也就是说如果你的环境中 Dozzle 已经通过 agent 或 remote host 管理了多台 Docker 主机那么 dtop 也可以按同样的连接思路去访问这些主机在终端里统一查看它们的状态。关于多主机连接可以在本仓库找到 Dozzle 侧对应的完整方案作为对照Agent 模式通过DOZZLE_REMOTE_AGENT连接远程 agent默认端口 7007agent 之间通过 TLS 加密通信是最推荐的多主机方式远程主机通过DOZZLE_REMOTE_HOST如tcp://167.99.1.1:2376直接连接远程 Docker daemon适合私有网络内配合 socket proxy 使用。dtop 与 Dozzle 在连接层面共享同样的目标主机类型本机 socket / 远程 TCP / SSH因此在你的多主机方案里终端侧与浏览器侧可以指向同一批主机观察口径保持一致。安装 dtop官方文档给出了两种安装方式按需选择即可。方式一Homebrew 安装如果你使用 macOS或已安装 Homebrew 的 Linux 环境一行命令即可完成安装brew install dtop安装完成后dtop命令直接进入 PATH随时可在任意终端会话中启动。方式二Docker 运行免安装如果你不想在本机安装任何东西或者目标主机本身就跑着 Docker可以直接用官方镜像运行docker run -v /var/run/docker.sock:/var/run/docker.sock -it ghcr.io/amir20/dtop:latest这条命令里有三个关键点值得注意挂载 Docker socket-v /var/run/docker.sock:/var/run/docker.sock把宿主机的 Docker unix socket 挂进容器dtop 才能读取容器列表。这与 Dozzle 自身的标准启动方式完全一致——在 Getting Started 中Dozzle 同样通过挂载/var/run/docker.sock获得 Docker 访问能力交互式终端-it保证分配交互式 TTY否则这类实时刷新的 TUI 应用无法正常渲染镜像来源镜像托管在 GitHub Container Registryghcr.io使用latest标签获取最新发布版本。安全提示与 Dozzle 一样挂载 Docker socket 意味着获得该主机的 root 级 Docker 控制权。只在可信的私有网络或本机环境使用这种连接方式。完整的安装说明包括其他平台与发行渠道由 dtop 项目在自身仓库中维护建议以 dtop 官方仓库的 README 为准。定位与分工终端问询浏览器深挖官方文档用一句话概括了 dtop 的定位——它刻意比 Dozzle 小deliberately smaller than Dozzle。两者之间是一条清晰的分工线dtop 负责在终端回答现在在跑什么、有没有出问题dtop 覆盖的问题是 what is running right now, and is anything on fire现在有哪些容器在运行有没有哪个在着火。换句话说它擅长的是状态概览实时列出运行中的容器及其状态快速发现异常容器如持续重启、健康检查失败等第一时间在终端里瞄到问题轻量、常驻、不占浏览器窗口适合放进 tmux/screen 会话或 SSH 登录后的默认视图。Dozzle 负责一切需要浏览器能力的深度排查当概览发现问题、需要进一步追根究底时dtop 把接力棒交给 Dozzle。文档明确列举了这些需要浏览器的能力历史日志log history进入容器日志视图回溯完整的日志流搜索searchDozzle 支持对日志做正则搜索与容器名的智能模糊搜索见 README 的 Features 列表与 Filters 文档SQL 查询SQL queries针对 JSON 日志Dozzle 内置了基于 DuckDB/WASM 的 SQL 引擎可以在浏览器内直接执行SELECT ... FROM logs WHERE level error这类分析查询数据不出浏览器统计图表stat chartsDozzle 提供实时的内存与 CPU 使用率图表live stats with memory and CPU usage把容器资源消耗的变化趋势可视化。也就是说dtop 解决有没有事Dozzle 解决到底是什么事、为什么。终端只保留最轻的实时状态面把需要交互、筛选、可视化的重活全部留给浏览器端的 Dozzle。这种薄终端 厚 Web的架构取舍与 Dozzle 本身轻量、专做实时日志查看的产品哲学是一脉相承的README 中明确说明 Dozzle 不存储日志文件只做实时查看。多主机场景下的组合用法结合 Dozzle 的多主机能力可以勾勒出 dtop 在实际生产环境中的典型用法单机快速巡检本机通过 unix socket 运行 dtop随时查看本机容器状态发现问题后在浏览器打开 Dozzle同一 socket深挖日志多主机统一监控当 Dozzle 通过 Agent 模式DOZZLE_REMOTE_AGENT或 远程主机DOZZLE_REMOTE_HOST纳管多台 Docker 主机时dtop 同样可以通过ssh/tcp连接这些主机在终端里逐台巡检省去反复打开浏览器页面的开销SSH 会话场景在无法访问浏览器或不想暴露 Dozzle Web 端口的隔离网络里SSH 登录 dtop 是最轻量的远程监控手段。项目状态与维护dtop 与 Dozzle 是两个独立维护的项目dtop 在独立仓库中开发按自己的发布节奏迭代不跟随 Dozzle 的版本号功能建议与 bug 报告应提交到 dtop 项目自身的 Issues 页面而不是 Dozzle 仓库Dozzle 仓库内的 dtop 文档docs/guide/dtop.md同时提供多语言版本如 法语、中文、德语、西班牙语但详细的安装与使用手册以 dtop 官方仓库为准。一句话总结如果你已经在用 Dozzle 管理容器日志dtop 就是那个把实时状态巡检从浏览器搬回终端的轻量搭档——终端里盯状态浏览器里查日志各司其职。【免费下载链接】dozzleRealtime log viewer for containers. Supports Docker, Swarm and K8s.项目地址: https://gitcode.com/GitHub_Trending/do/dozzle创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表