$cd ../troubleshooting/
Medium#Docker

Docker 端口 18789 冲突

// "Bind for 0.0.0.0:18789 failed: port is already allocated" — 快速解决方法。

error.log

🔍 错误信息

Error response from daemon: driver failed programming external
connectivity on endpoint openclaw:
Bind for 0.0.0.0:18789 failed: port is already allocated
fix.sh

✅ 逐步修复

1. 查找占用 18789 端口的进程
$ lsof -i :18789 # macOS / Linux
$ netstat -ano | findstr 18789 # Windows
2. 方案 A — 终止冲突进程
$ kill -9 <PID>
# Then restart OpenClaw
$ docker compose up -d
3. 方案 B — 更改 OpenClaw 端口
# docker-compose.yml
services:
openclaw:
ports:
- "18888:18789" # host:container

❓ FAQ

Q1. 可以用任何端口吗?

可以。修改 docker-compose.yml 映射左侧即可。