如何访问本地网络中的Docker容器?

How to access a Docker container in the local network?

我已经从 Docker Hub 中提取了一个 MYSQL 图像,并通过设置必要的凭据(例如用户名、密码等)运行 它。然后我通过以下方式检查了容器:

docker inspect CONTAINER_ID

我从哪里获得了 MySQL 数据库的 IP 地址。由于 Docker 守护程序通过桥接网络连接,我的 IP 地址是:172.17.0.2。通过指定此 IP,我可以从主机 (Fedora) 连接到数据库。但是,如何从同一局域网中的另一台机器连接到 MySQL 数据库?

您需要将容器端口绑定到主机端口。将 -p 添加到 docker run 命令:

docker run -p HOST_PORT:CONTAINER_PORT

即:

docker run -p 3306:3306 .......

因此 MySQL 可从 Fedora 的 LAN 接口访问。