dry:终端里的 Docker 管理器
一个运行在终端里的 Docker 与 Docker Compose 管理工具,用键盘浏览容器、镜像、网络、卷和 Compose 项目。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v0.13.0
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
dry 是一个运行在终端里的 Docker 和 Docker Compose 管理工具。它让你不用离开终端就能浏览容器、镜像、网络和卷,也能管理 Compose 项目——启动、下线、查看与 compose 文件产生偏差的内容。
它既可以连接本地 Docker daemon,也可以连接远程 daemon;除了展示信息,还能执行管理操作,官方 Docker CLI 提供的大部分命令在 dry 中都有相同行为的版本。它也可以用作 Docker 容器的监控工具,当 daemon 运行 Swarm 集群时还能管理 Nodes、Services 和 Stacks。
dry 以单一二进制安装,不需要外部库。
主要功能
- 多视图切换:容器(<kbd>1</kbd>)、镜像(<kbd>2</kbd>)、网络(<kbd>3</kbd>)、卷(<kbd>4</kbd>)、节点(<kbd>5</kbd>)、服务(<kbd>6</kbd>)、Stacks(<kbd>7</kbd>)、Compose 项目(<kbd>8</kbd>)。
- 全局快捷键:<kbd>%</kbd> 过滤列表、<kbd>F1</kbd> 排序、<kbd>F5</kbd> 刷新、<kbd>F7</kbd> 切换 Docker daemon 信息、<kbd>F8</kbd> 磁盘占用、<kbd>F9</kbd> 最近 10 条 Docker 事件、<kbd>F10</kbd> docker info、<kbd>:</kbd> 打开命令面板、<kbd>Space</kbd> 打开 Quick Peek、<kbd>Ctrl+0</kbd> 切换深色/浅色主题。
- 容器操作:<kbd>Enter</kbd> 命令菜单(运行中的容器含 Attach)、<kbd>F2</kbd> 显示/隐藏已停止容器、<kbd>i</kbd> inspect、<kbd>l</kbd> 日志、<kbd>e</kbd> 删除、<kbd>s</kbd> 统计、<kbd>x</kbd> 在容器内执行命令(默认
/bin/sh)、<kbd>Ctrl+k</kbd> kill、<kbd>Ctrl+r</kbd> 启动/重启、<kbd>Ctrl+t</kbd> 停止。 - 镜像、网络、卷:inspect、删除、强制删除、清理未使用或悬空资源等操作。
- Compose 项目:<kbd>u</kbd> 启动服务、<kbd>d</kbd> 下线项目、<kbd>c</kbd> 查看渲染后的 compose 配置、<kbd>l</kbd> 日志、<kbd>Ctrl+t</kbd> 停止、<kbd>Ctrl+r</kbd> 重启、<kbd>Ctrl+e</kbd> 删除容器;破坏性操作会先弹出确认提示。
- 工作区模式(
--workspace):同时显示当前列表、上下文面板和底部活动面板,<kbd>Tab</kbd> / <kbd>Shift+Tab</kbd> 在Navigator、Context、Activity之间切换焦点,<kbd>p</kbd> / <kbd>P</kbd> 固定或取消固定预览,<kbd>f</kbd> 切换活动面板的跟随即模式;终端过窄或过矮时会回退为单面板布局。
安装与使用
Linux 和 Mac 上最方便的安装方式:
curl -sSf https://moncho.github.io/dry/dryup.sh | sudo sh
sudo chmod 755 /usr/local/bin/dry
macOS 也可以用 Homebrew:
brew tap moncho/dry
brew install dry
Arch Linux:
yay -S dry-bin
也可以用 Docker 运行:
docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock -e DOCKER_HOST=$DOCKER_HOST moncho/dry
README 还提供 darwin、freebsd、linux、windows 各架构的二进制下载链接。
启动时在终端输入 dry,它会依次尝试连接:参数指定的 Docker 主机(-H)、$DOCKER_HOST 环境变量、unix:///var/run/docker.sock。
通过 SSH 连接远程 Docker daemon:
DOCKER_HOST=ssh://user@host dry
主机、端口和用户按 ssh 命令的方式解析,会遵循 ~/.ssh/config 中的 Hostname、Port、User、IdentityFile 等配置;端口默认 22,远程 socket 默认 /var/run/docker.sock,也可以在 URL 中指定其他路径。
其他启动选项:
dry -T light # 使用浅色主题(默认 dark)
dry --workspace # 启用实验性的工作区布局
dry -p # 启用 pprof
注意事项
- dry 不读取
docker context。使用 Docker Desktop、colima 或 Rancher Desktop 时,如果其活动 context 不是该 socket,需要用-H或$DOCKER_HOST指定主机;同一个值也会传给docker compose插件,保证两者连的是同一个 daemon。 - 如果无法连接任何 Docker 主机,dry 会直接退出。
- SSH 连接会校验远程主机密钥(
~/.ssh/known_hosts和/etc/ssh/ssh_known_hosts),未知主机或密钥不匹配时连接失败,可先用ssh host连接一次记录密钥。设置DRY_SSH_INSECURE_SKIP_HOST_KEY_CHECK=1可关闭校验,但这会让连接暴露在中间人攻击下,只应对完全可控的主机使用。
本作品整理自 GitHub 开源项目 moncho/dry,原作者 @moncho,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v0.13.0当前版本
新增 --workspace 工作区模式,同屏显示导航、上下文与活动面板;支持交互式 exec 与 attach;新增 --theme 启动主题选择。
评论