19 lines
524 B
TypeScript
19 lines
524 B
TypeScript
import { Provider } from '@nestjs/common';
|
|
import { ConfigService } from '@nestjs/config';
|
|
import Redis from 'ioredis';
|
|
|
|
export const REDIS_CLIENT = 'REDIS_CLIENT';
|
|
|
|
export const RedisProvider: Provider = {
|
|
provide: REDIS_CLIENT,
|
|
inject: [ConfigService],
|
|
useFactory: (config: ConfigService) => {
|
|
return new Redis({
|
|
host: config.get('REDIS_HOST', 'redis'),
|
|
port: config.get<number>('REDIS_PORT', 6379),
|
|
password: config.get('REDIS_PASSWORD') || undefined,
|
|
lazyConnect: true,
|
|
});
|
|
},
|
|
};
|