要让Docker容器访问宿主机数据库,可以使用Docker的网络功能来实现。
以下是一个使用Docker网络连接宿主机数据库的示例:
docker network create mynetwork
docker run -d --name mydb --network mynetwork -e MYSQL_ROOT_PASSWORD=password mysql
这将创建一个名为mydb的MySQL容器,并将其连接到mynetwork网络中。
docker run -it --name myapp --network mynetwork myappimage
这将创建一个名为myapp的应用容器,并将其连接到mynetwork网络中。
请注意,宿主机的IP地址可能会因为网络环境的不同而有所变化。可以使用以下命令来查找宿主机的IP地址:
docker network inspect bridge
在输出的结果中,可以找到宿主机的IP地址。
这样,应用容器就能够通过Docker网络访问宿主机数据库了。请确保宿主机的防火墙设置允许从Docker网络访问相应的数据库端口。