docker 容器内访问宿主机的端口号

更新日期: 2024-10-02 阅读次数: 317 字数: 245 分类: docker

使用场景

例如,我的 MySQL 数据库安装在了宿主机内,没有使用 docker。目的是:

  • 为了方便多个服务使用数据库
  • 服务器配置较低,也没有运行多个数据库的需求

但是,有个 PHP 的服务放在了 docker 内,所以需要 docker 容器内的 PHP 请求宿主机的 MySQL

有哪些解决方案

我大概看了一下网上的方案,大概有这么几个方案

  • 通过 docker0 的 IP 地址访问
  • 将容器的网络类型改成 host 类型。即,与宿主机共用网络
  • 通过 host.docker.internal 这种修改 hosts 文件的方式

我倾向于第二种解决方案,即容器与宿主机共用一个网络的方案。

docker host 网络类型

https://docs.docker.com/engine/network/tutorials/host/

docker compose 的写法: https://www.squash.io/tutorial-host-network-in-docker-compose/

还是问问 AI 比较好。

除了 host 网络类型,还有哪几种类型?

微信关注我哦 👍

大象工具微信公众号

我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式