package com.example.thirdassignment.common.redis
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import org.springframework.data.redis.connection.RedisConnectionFactory
import org.springframework.data.redis.connection.RedisStandaloneConfiguration
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
@Configuration
class RedisConfig(
private val redisProperties: RedisProperties,
) {
@Bean
fun redisConnectionFactory(): RedisConnectionFactory {
val redisConfig = RedisStandaloneConfiguration(redisProperties.host, redisProperties.port)
if (redisProperties.password.isNotBlank()) { // local일경우
redisConfig.setPassword(redisProperties.password)
// 다른 값 들어가서 오류날 수도 있으니 local 쓸 땐 yaml 비워두기
}
return LettuceConnectionFactory(redisConfig)
}
}
docker run -d -p 6379:6379 redis --requirepass 비밀번호
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""
위처럼 뜨면 비밀번호 설정이 되지 않은 것이다.
# 비번 설정
127.0.0.1:6379> config set requirepass 비번넣기
OK
재접속한뒤 명령어를 입력하면 (error) NOAUTH Authentication required
가 발생한다.
AUTH 비번넣은것
위처럼 한 뒤 명령어를 입력하면 똑바로 사용 가능하다.