最常用、最安全的调试方式是用 docker exec -it 启动新 shell,不干扰原进程;先用 docker ps 确认容器运行状态,若为 exited 则需查日志;标准镜像用 /bin/bash,alpine 用 /bin/sh;也可直接执行单条命令快速验证;建议优先结合 docker logs 实时跟踪或过滤错误日志。

最常用、最安全的方式是用 docker exec -it 启动一个新 shell,不干扰原进程,适合绝大多数调试场景。
确认容器正在运行
先执行 docker ps 查看当前运行中的容器列表。关注 STATUS 列是否为 “Up”,并记下容器名或 ID。如果没看到目标容器,加 -a 参数查看所有容器(包括已退出的):docker ps -a
若容器状态是 Exited (1) 等非零退出码,说明它启动失败,需先查日志再考虑临时容器方式。
用 exec 进入交互式 Shell
这是调试首选方法,容器持续运行,你获得独立终端:
MiniMax 图片理解 + 网络搜索 MCP 工具。适配 Docker 环境(极空间等),支持图片 OCR 识别、图像内容理解、网络搜索。API Key 安全存储在本地 credentials 文件,不暴露在代码中。
- 标准 Linux 镜像(如 Ubuntu、CentOS、Debian)通常含 bash:
docker exec -it /bin/bash - 精简镜像(如 Alpine)默认只有 sh:
docker exec -it /bin/sh - 进容器后可立即检查:
—ps aux看主进程是否存活
—env查关键环境变量(如 DATABASE_URL)
—ls -l /app或对应路径确认文件是否存在
—curl -v http://localhost:8080/health测试服务连通性
不进 Shell,直接执行单条命令
适合快速验证、读配置、查端口,避免登录退出开销:
- 查看某配置文件:
docker exec cat /etc/nginx/conf.d/default.conf - 检查监听端口:
docker exec netstat -tuln | grep :3000 - 导出最近日志到本地:
docker exec tail -n 50 /var/log/app.log > local.log
配合日志快速定位问题
日志往往比进容器更快暴露异常,建议先看再进:
- 实时跟踪输出(类似 tail -f):
docker logs -f(Ctrl+C 退出) - 只看最近错误行:
docker logs 2>&1 | grep -i "error\|exception" - 带时间戳和行号便于比对:
docker logs -t --tail 100










