docker - redis连接超时到docker中的远程服务器

标签 docker redis docker-compose

我在机器 A 中使用 docker-compose 启动了一个 redis 容器。

docker-compose.yml.

redis:
    ports:
    - "6379:6379"
    image: redis

在机器 A 上,我可以在终端中使用 redis-cli 连接到它。

redis-cli 
127.0.0.1:6379> 

但我无法在机器 B 上使用 A 的 IP 连接到它,甚至在机器 A 本身上也是如此。

在机器 B 或 A 上。

redis-cli -h 10.10.10.25
Could not connect to Redis at 10.10.10.25:6379: Connection timed out
not connected> 

最佳答案

这很奇怪。我可以使用 A 的 IP 在主机 A 和主机 B 上运行 redis-cli。 以下是“docker ps”的输出

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
a59c39bf448e        redis               "/entrypoint.sh redis"   3 minutes ago       Up 3 minutes        0.0.0.0:6379->6379/tcp   test_redis_1

将redis容器的6379端口映射到宿主机的6379端口后,宿主机A的所有网络接口(interface)(0.0.0.0)都应该可以使用redis服务了,所以不需要更改redis的配置。

你能显示“docker ps”的输出吗?

关于docker - redis连接超时到docker中的远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36784812/

相关文章:

redis - 我可以根据redis服务器的当前系统时间在redis中设置一个值吗?

redis - redis 中的集合可以是确定性的吗?

docker - 使用 docker-compose(SSH 私钥)将参数从文件传递给 Dockerfile

docker - Docker参数化内部传递的文件

docker - 在 docker 中运行 tomcat 时无法访问 tomcat 管理器或任何其他默认 tomcat 应用程序

lua - redis: "Multi Bulk Reply"-> lua表

docker - 使用 CloudFormation 的 ECS + EC2 陷入 CREATE_IN_PRO

bash - 评估 "$(docker-machine env default)"

linux - 将虚拟主机转换为 Docker 容器

docker - 无法在 docker 镜像中缓存 maven 依赖项