背景
- 虚拟机 Virtual Box 的 CentOS 中跑了 MongoDB 的 Docker 容器
docker run -p 27017:27017 \ --name mongodbinstance \ --network bridge \ -v $PWD/mongodb-data:/data/db \ -d mongo
- 开放 CentOS 27017 端口
# 放行 27017 TCP 端口 firewall-cmd --add-port 27017/tcp --zone=public --permanent # 重载配置 firewall-cmd --reload
问题
- 从 Windows 用 telnet 连接不了虚拟机的 MongoDB Docker 容器
# 端口不通 telnet 192.168.56.103 27017
- 用 MongoDB GUI 客户端也连接不了
( MongoDB GUI 客户端:DMShttps://dms.aliyun.com/static/html/download.htm
)
解决
- 参考 https://blog.youkuaiyun.com/qq_39354140/article/details/129072064
- 修改 ipv4 转发状态,添加
net.ipv4.ip_forward = 1
vi /usr/lib/sysctl.d/00-system.conf
net.ipv4.ip_forward = 1
# 重启网络 systemctl restart network
验证
- Windows 用 telnet 连接 27017 成功
- MongoDB GUI 客户端连续成功