Can';t连接到docker redis

Can';t连接到docker redis,docker,spring-boot,redis,Docker,Spring Boot,Redis,我有一个docker compose文件,其中包含下一个图像: redis: image: redis container_name: redis ports: - 6379:6379 我希望容器名称将被公开,并且我将能够使用redis:6379uri进行连接,但我不能这样做。以下是配置: fun jedisLocalConnectionFactory(): JedisConnectionFactory { val jedisConFactory =

我有一个docker compose文件,其中包含下一个图像:

redis:
    image: redis
    container_name: redis
    ports:
      - 6379:6379
我希望容器名称将被公开,并且我将能够使用redis:6379uri进行连接,但我不能这样做。以下是配置:

fun jedisLocalConnectionFactory(): JedisConnectionFactory {
    val jedisConFactory = JedisConnectionFactory()
    jedisConFactory.hostName = "redis"
    jedisConFactory.port = 6379
    return jedisConFactory
}

如何公开这个redis服务并连接到它?我已经尝试了很多不同的组合,但没有任何运气

使用容器名称进行连接只能在用户定义的网络中使用。以下是Docker文档中的捕获

Docker不支持默认网桥>网络上的自动服务发现。如果希望容器按容器名称解析IP地址,>则应改用用户定义的网络。

将此作为参考:

services:
  springboot:
    image: springboot
    networks:
      - my-net

  redis:
    image: redis
    container_name: redis
    ports:
      - 6379:6379
    networks:
      - my-net

networks:
  my-net:
    driver: bridge

如果将外壳放入容器中,您是否可以看到redis实际上正在监听端口6379?当你进入那里时,试试“netstat-na | grep6379”。可能是因为它只在本地主机上侦听,而不允许正确进行端口转换?谢谢!我已经从这个例子中添加了我的网络。我可以使用哪个uri访问该服务?您可以通过
redis
直接访问它。或者给它一个网络别名。