使用docker compose将nestjs连接到redis

z9smfwbn  于 2021-06-09  发布在  Redis
关注(0)|答案(1)|浏览(527)

我正在尝试将我的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:

为了助推 `redis` 在我的nestjs应用程序中,我正在使用 `nestjs-redis` 以及 `app.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` 谢谢你的帮助!
x9ybnkn6

x9ybnkn61#

当你使用 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:

在您的代码片段中,按以下方式传递主机

import { RedisModule } from 'nestjs-redis';

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

相关问题