【问题标题】:Connect nestjs to redis using Docker Compose使用 Docker Compose 将 nestjs 连接到 redis
【发布时间】:2020-09-19 12:34:46
【问题描述】:

我正在尝试将我的 Nestjs 应用程序连接到 Redis,如下所示:

这是我docker-compose.yml的内容

version: '3.7'

services:
  main:
    container_name: main
    build:
      context: .
      target: development
    volumes:
      - .:/usr/src/app
      - /usr/src/app/node_modules
    ports:
      - ${PORT}:${PORT}
      - 9229:9229
    command: yarn start:dev
    env_file:
      - .env

    networks:
      - webnet
  redis:
    image: 'redis:alpine'

networks:
  webnet:

为了在我的 Nestjs 应用程序中增强 redis 功能,我使用了 nestjs-redisapp.module.ts 的相关部分如下所示:

import { RedisModule } from 'nestjs-redis';

@Module({
 imports: [
  RedisModule.register({})
 ]
})

但是,当我尝试在我的设置中运行 docker-compose up 时,我收到以下错误:

[ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379

感谢您的帮助!

【问题讨论】:

    标签: docker redis nestjs


    【解决方案1】:

    当您使用docker-compose.yml 时,请尝试使用内部links 功能。

    version: '3.7'
    
    services:
      main:
        container_name: main
        build:
          context: .
          target: development
        volumes:
          - .:/usr/src/app
          - /usr/src/app/node_modules
        ports:
          - ${PORT}:${PORT}
          - 9229:9229
        command: yarn start:dev
        links:
          - redis
        env_file:
          - .env
        networks:
          - webnet
      redis:
        image: 'redis:alpine'
        ports:
          - 6379:6379
        networks:
          - webnet
    
    networks:
      webnet:
    

    在你的sn-p中,通过以下方式传递主机

    import { RedisModule } from 'nestjs-redis';
    
    @Module({
     imports: [
      RedisModule.register({host: "redis"})
     ]
    })
    

    【讨论】:

    • 我已经完成了您列出的更改,错误消息更改为[ioredis] Unhandled error event: Error: getaddrinfo ENOTFOUND redis,但是,如果我在app.module.ts 中将主机设置为localhost,它会返回原始错误消息。
    • 刚刚在redis 部分添加了网络,现在可以试试吗?
    猜你喜欢
    • 2019-12-10
    • 2017-07-11
    • 2020-12-18
    • 2019-03-03
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 2020-06-03
    • 2018-12-31
    相关资源
    最近更新 更多