스프링 어플리케이션 단에서 비밀번호 설정

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로 띄우는 명령어

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 비번넣은것

위처럼 한 뒤 명령어를 입력하면 똑바로 사용 가능하다.