docker中有两个容器,分别名为mq 和 hyperf,想在hyperf中访问mq
可以使用下面的方法

1.创建网络

docker network create mynetwork

2.将使用到的容器(如业务容器,mysql,redis,mq等容器)都加入到网络中

docker network connect  mynetwork   hyperf
docker network connect  mynetwork   mq
docker network connect  mynetwork   mysql
docker network connect  mynetwork   redis

3.在代码中使用容器名称作为主机名访问中间件即可
如下是环境变量文件.env中的配置

RABBITMQ_HOST=mq
RABBITMQ_PORT=5672
RABBITMQ_USER=xxxx
RABBITMQ_PASSWORD=xxxx
RABBITMQ_VHOST=/

#redis是装在宿主机中的,可以使用docker0上绑定的ip来访问

REDIS_HOST=172.17.0.1
REDIS_AUTH=xxxxx
REDIS_PORT=6379
REDIS_DB=0

老段
0 声望0 粉丝