平时管理远端的 Docker 容器,大多数人第一反应是通过 SSH 登录到服务器再执行命令。
其实 Docker 本身是 C/S 架构,只要配置好连接方式,就能在本地直接管理远程容器,甚至用 VS Code 图形化界面操作,完全不必反复登录。
下面我就用管理微服容器的例子,把实现方法和使用体验记录下来
1. 准备免密登录
为了避免奇怪的认证问题,可以先将 SSH Key 复制到远端,实现免密登录。 (/root 目录重启不会丢失 SSH Key)
ssh-copy-id root@name.heiyu.space2. 最简单的方式:设置 DOCKER_HOST
直接在本地设置 Docker 引擎的环境变量,指向远端的 docker.sock 文件:
export DOCKER_HOST=ssh://root@name.heiyu.space在 Warp 中(非直接 SSH 登录),执行 docker ps 后,就可以看到远端的容器了。
不过仔细看,这里其实是系统组件,没有必要随便动,而且千万不要随便操作系统组件容器!

3. 使用 Docker Context 管理非标准路径的 docker.sock
之前介绍过,playground 和 appstore 的 Docker 配置文件在其他目录。 这种情况下可以通过 docker context 引用非标准路径的 docker.sock:
docker context create my-remote-sock \
--docker "host=ssh://root@name.heiyu.space:/data/playground/docker.sock"
docker context use my-remote-sockplayground 的 Docker 也可以用 Dockge 管理,不过当 Dockge 的功能不够用时,就可以用这个作为备用方案。
4. 管理商店容器
商店有时需要执行 lzc-docker exec 或 lzc-docker restart,可以先创建对应的 Context:
docker context create lzc-remote-sock \
--docker "host=ssh://root@name.heiyu.space:/lzcsys/run/lzc-docker/docker.sock"然后切换 Docker 引擎:
docker context use lzc-remote-sock查看 Docker 信息:
Kernel Version: 6.5.0-0.deb12.4-amd64
Operating System: Debian GNU/Linux 12 (bookworm) (containerized)
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 31.12GiB
Name: lzcbox-029c588e
ID: 0726989e-2e3e-46d1-89ba-753f7dd1a600
Docker Root Dir: /lzcsys/run/data/system/docker5. 本地 Warp 记录

到这里,你会发现本地和远端几乎没有区别。
6. 图形化管理:VS Code Docker 插件
在 VS Code 中安装 Microsoft 官方 Docker 插件,即可在界面中查看远端的 Image、Container、Logs,并且可以直接 exec 进入容器。

在 Docker Context 面板可以直接切换上下文(相当于 docker context use lzc-remote-sock),然后就能在 VS Code 中操作对应容器和镜像,无需手动敲命令。

7. 查看已创建的 Docker Context
在命令行查看所有 Context:
docker context ls输出示例:
NAME DESCRIPTION DOCKER ENDPOINT
default * Current DOCKER_HOST based configuration ssh://root@name.heiyu.space
lzc-remote-sock ssh://root@name.heiyu.space:/lzcsys/run/lzc-docker/docker.sock
my-remote-sock ssh://root@name.heiyu.space:/data/playground/docker.sock
orbstack OrbStack unix:///Users/.orbstack/run/docker.sock
Warning: DOCKER_HOST environment variable overrides the active context.
To use a context, either set the global --context flag, or unset DOCKER_HOST environment variable.总结
通过 docker context 配合 VS Code Docker 插件,不仅能用命令行直接操作远端微服容器,还能图形化查看容器状态、镜像和日志。 这种方式的好处是:
- 免 SSH 登录,管理更高效;
- 可切换多个 docker.sock,适合同时维护多个服务环境;
- 配合 VS Code,操作体验接近本地容器。
对于习惯 GUI 操作的人来说,这几乎就是远程 Docker 的“丝滑”管理方式。下次维护微服时,你也可以试试这一套。

