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

标签 mysql docker containers docker-networking

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

docker inspect CONTAINER_ID

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

最佳答案

您需要将容器端口绑定(bind)到主机端口。添加-pdocker run命令:

docker run -p HOST_PORT:CONTAINER_PORT

即:

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

因此可以从 Fedora 的 LAN 接口(interface)访问 MySQL。

关于mysql - 如何访问本地网络中的Docker容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46880479/

相关文章:

php - 在多个数组中循环多个 SQL 查询

java - Docker depends_on 命令不工作

networking - 如何将 Docker 容器配置为可通过 container_ip :port from outside the host machine? 访问

c++ - 在 C++ 类中使用谓词函数指针

可跨进程共享的 C++ 容器

python - 字符串值错误错误 - Python + mariaDB

php - 使用 LIKE 运算符优化 10k 记录的 mysql 查询

php - 如何设置MySQL查询?

maven - 构建多个 Maven 模块,然后在 Docker 镜像中复制 JAR

c++ - 具有模板化参数的类函数偏特化