如何在 ServerBox 里进入 Docker 容器内部运行命令
进入容器终端
在容器详情页点「终端」按钮,ServerBox 会通过 SSH 执行 docker exec -it <容器名> /bin/sh(或 bash,如果容器里有的话),然后把返回的 shell 渲染成一个内嵌终端。

容器终端和普通 SSH 终端的区别
| 特性 | 普通 SSH 终端 | Docker 容器终端 |
|---|---|---|
| 进入方式 | ssh user@server | docker exec -it container sh |
| 文件系统 | 宿主机完整 | 容器自己的文件系统(从镜像来) |
| 进程 | 宿主机所有进程 | 只有容器内的进程 |
| 用户 | 服务器用户 | 容器内用户(通常是 root 或应用用户) |
| 网络 | 宿主机网络命名空间 | 容器独立网络(bridge/host/none) |
| 安装工具 | 宿主机装了什么就是什么 | 镜像里带了什么,通常很精简 |
容器里常用的排查命令
进了容器终端后,常用的排查操作:
# 看进程
ps aux
# 看网络
ip addr / netstat -tlnp
# 看环境变量
env
# 看应用日志(如果容器里日志写文件)
tail -f /var/log/app.log
# 测试网络连通性
curl http://其他容器:端口/
ping 其他容器
容器里没有 bash 怎么办
很多生产级 Docker 镜像(如 Alpine、Distroless、Slim)不包含 bash,只有 sh。ServerBox 会先尝试 bash,找不到就退回到 sh,所以正常情况下不用管。
如果你需要 bash 功能(history、数组、更丰富的语法):
- Alpine:
apk add bash - Debian/Ubuntu Slim:
apt-get update && apt-get install -y bash - Distroless:用 multi-stage build 加一个调试镜像,或者用
docker run --rm -it --volumes-from <容器> <调试镜像>
在容器终端和宿主机终端之间切换
ServerBox 会把你打开的所有终端(宿主机 SSH + Docker exec)统一列在侧栏,方便随时切换:
- 宿主机终端会显示服务器图标
- 容器终端会显示 Docker 图标和容器名前缀
退出容器终端
exit或Ctrl+D退出当前容器 shell- 这只会退出 docker exec,不会停止容器运行
- 要彻底停止容器还是回到容器面板用"停止"按钮