在运行的 Docker 中修改映射端口
起因是想在 OpenClaw 新增 Chatgpt 模型,但是认证需要本地的1455端口。现在的网络拓扑有点复杂:
- 我访问实验室的服务器是通过自己搭建的 VPN 访问的,我本地认证访问 1455 端口首先要映射到服务器的宿主机。
- OpenClaw 容器没有启动 1455 端口映射,我在宿主机也没办法访问容器的 1455 端口。
所以一共需要四跳:
- 本地流量到我的公网服务器。
- 公网服务器到我在实验室的旧电脑。
- 旧电脑到实验室的内网服务器。
- 内网服务器到 Docker 内的龙虾。
前三跳都比较简单,属于 VPN。虽然是 1455 端口的流量,但是可以通过 SSH 建立隧道。
但是如何从宿主机到 Docker 呢?我其实一开始没有开启 1455 的映射,有两种方法:
- 新建一个转发的 Docker 容器 A,与我们的目的容器 B 拉进同一个网络,然后在建立容器 A 的是偶开启端口映射。但是这样不行,因为容器 B 的监听是 127.0.0.1 而不是 0.0.0.0。
- 修改配置。
正式操作
在正式操作前,必须关闭 Docker 服务,否则内存中的配置会覆盖配置文件。
1 | |
查看容器的ID:
1 | |
修改配置:
1 | |
新增:
1 | |
继续修改配置:
1 | |
新增:
1 | |
重启 Docker:
1 | |
测试:在容器内部临时创建 Http Server 服务。
在本地访问。
在运行的 Docker 中修改映射端口
https://d4wnnn.github.io/2026/03/16/Notion/在运行的 Docker 中修改映射端口/