Lite Docker Manager Gram
用 Telegram Bot 管理 Docker Compose 项目:一键拉取新镜像、重建容器、批量升级、清理镜像,
再也不用每次升级都 SSH 进服务器敲 docker compose down && pull && up -d。
- 🚀 一键升级:单项目 / 单服务 / 全部项目,自动执行
pull+up -d - 📊 项目管理面板:按运行状态分组、分页浏览、项目与服务一目了然
- 🧹 镜像清理:区分「悬空镜像」与「所有未使用镜像」,先预览再确认
- 🛑 可中断任务:单命令超时自动终止,升级过程随时可取消,取消按钮与任务绑定
- 📶 实时进度:动态进度条 + 日志预览,兼容 compose 的
\r进度输出 - 🔐 权限控制:仅白名单内的 Telegram 用户可操作
- 📝 审计日志:所有操作滚动写入日志文件,方便回溯
- 🖥 多架构镜像:
linux/amd64与linux/arm64双平台发布
找 @BotFather 创建 Bot 并获取 BOT_TOKEN;
在 @userinfobot 查询自己的 User ID,作为 ALLOWED_USER_IDS。
复制 .env.example 为 .env 并填写:
BOT_TOKEN=123456:ABCDEF-你的BotToken
ALLOWED_USER_IDS=123456789,987654321
PAGE_SIZE=6docker compose up -d路径挂载(重要)
docker compose ls返回的是宿主机侧的绝对路径。请按实际环境把 compose 文件所在目录 挂载到容器内相同路径,例如宿主/docker下按项目分子目录:volumes: - /docker:/docker/docker ├── emby │ └── docker-compose.yml └── openlist └── docker-compose.yml备注:本项目仅测试过 docker compose(v2)管理的容器。
| 变量 | 必填 | 默认值 | 说明 |
|---|---|---|---|
BOT_TOKEN |
✅ | - | Telegram Bot Token |
ALLOWED_USER_IDS |
✅ | - | 允许使用的 Telegram User ID(多个用逗号分隔) |
PAGE_SIZE |
❌ | 6 |
主面板每页展示的项目数量 |
LOG_DIR |
❌ | logs |
滚动审计日志目录 |
| 命令 | 说明 |
|---|---|
/start、/list |
打开项目管理面板(分页、按状态分组) |
/status |
所有容器实时状态速览 |
/prune |
镜像清理菜单(悬空 / 所有未使用) |
/upgrade |
命令行升级:/upgrade 01、/upgrade 01 emby、/upgrade all |
/help |
使用帮助 |
ghcr.io/mbaigc/ldmg
- tags:
main/latest/sha-<短哈希> - 平台:
linux/amd64、linux/arm64
LDMG/
├── bot.py # Telegram Bot 主程序
├── bot-v1-grok.py # 早期版本(保留参考)
├── Dockerfile # 多阶段精简镜像
├── docker-compose.yml # 部署编排
├── requirements.txt # Python 依赖
├── .env.example # 环境变量示例
└── docs/optimization-logs/ # 优化/更新记录(按轮次归档)
- 容器挂载了
docker.sock,等同于宿主机 root 权限,请务必配置ALLOWED_USER_IDS白名单; - 不要把 Bot Token 提交到仓库或暴露在公开环境;
- 如需进一步收敛权限,可考虑只读挂载、限制网络等最小化部署。
每次代码审查与优化记录按 YYYY-MM-DD-NN-主题 规范归档在
docs/optimization-logs,下一次优化前建议先阅读索引与最近一份记录。
| 日期 | 记录 | 摘要 |
|---|---|---|
| 2026-08-11 | 拉取日志最终显示修订记录 | 拉取过程完整显示、完成后只保留 Pull complete/Pulled;修复进程等待偶发挂起 |
| 2026-08-11 | 反馈修订记录 | 拉取日志过滤噪音行、容器行去数量、命令菜单多作用域注册、过期菜单自动删除 |
| 2026-08-11 | UI体验优化记录 | 面板文字标签、Bot 命令菜单、拉取成功后自动删除过程消息 |
| 2026-08-11 | 全量优化与发布记录 | 修复取消语义、锁竞态等遗留问题,精简镜像,双平台发布 |
| 2026-08-10 | 两轮审查记录 | 首轮完整审查与二轮全量修复版复核 |