Skip to content

Commit 08a71c6

Browse files
committed
🐛 fix: redis host, port 설정이 되어 있지 않아 발생하는 오류 수정
1 parent a37ad68 commit 08a71c6

File tree

5 files changed

+26
-49
lines changed

5 files changed

+26
-49
lines changed

backend/src/main/resources/application.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ spring:
2020
redis:
2121
host: ${REDIS_HOST}
2222
port: ${REDIS_PORT}
23+
redisson:
24+
config: classpath:redisson.yaml
2325

2426
jpa:
2527
defer-datasource-initialization: true # 현재는 data.sql 에서 더미 유저 자동 추가를 위해 넣어뒀음.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
singleServerConfig:
2+
address: "redis://${REDIS_HOST}:${REDIS_PORT}"

backend/src/test/java/io/f1/backend/global/config/RedisTestContainerConfig.java

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
import com.redis.testcontainers.RedisContainer;
44

5+
import org.redisson.Redisson;
6+
import org.redisson.api.RedissonClient;
7+
import org.redisson.config.Config;
58
import org.springframework.context.annotation.Bean;
69
import org.springframework.context.annotation.Configuration;
710
import org.springframework.data.redis.connection.RedisConnectionFactory;
@@ -12,18 +15,27 @@
1215
@Configuration
1316
@Testcontainers
1417
public class RedisTestContainerConfig {
18+
1519
@Container
1620
public static RedisContainer redisContainer =
17-
new RedisContainer(
18-
RedisContainer.DEFAULT_IMAGE_NAME.withTag(RedisContainer.DEFAULT_TAG));
21+
new RedisContainer(
22+
RedisContainer.DEFAULT_IMAGE_NAME.withTag(RedisContainer.DEFAULT_TAG));
1923

2024
static {
2125
redisContainer.start();
2226
}
2327

2428
@Bean
25-
RedisConnectionFactory redisConnectionFactory() {
29+
public RedisConnectionFactory redisConnectionFactory() {
2630
return new LettuceConnectionFactory(
27-
redisContainer.getHost(), redisContainer.getFirstMappedPort());
31+
redisContainer.getHost(), redisContainer.getFirstMappedPort());
32+
}
33+
34+
@Bean
35+
public RedissonClient redissonClient() {
36+
Config config = new Config();
37+
String address = String.format("redis://%s:%d", redisContainer.getHost(), redisContainer.getFirstMappedPort());
38+
config.useSingleServer().setAddress(address);
39+
return Redisson.create(config);
2840
}
2941
}

backend/src/test/java/io/f1/backend/global/config/RedissonTestContainerConfig.java

Lines changed: 0 additions & 39 deletions
This file was deleted.

backend/src/test/java/io/f1/backend/global/lock/DistributedLockIntegrationTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import static org.junit.jupiter.api.Assertions.assertAll;
44
import static org.junit.jupiter.api.Assertions.assertEquals;
55

6-
import io.f1.backend.global.config.RedissonTestContainerConfig;
6+
import io.f1.backend.global.config.RedisTestContainerConfig;
77
import io.f1.backend.global.exception.CustomException;
88

99
import org.junit.jupiter.api.DisplayName;
@@ -22,17 +22,17 @@
2222
import java.util.concurrent.atomic.AtomicReference;
2323

2424
@SpringBootTest
25-
@Import({RedissonTestContainerConfig.class, DistributedLockIntegrationTest.TestLockService.class})
25+
@Import({RedisTestContainerConfig.class, DistributedLockIntegrationTest.TestLockService.class})
2626
class DistributedLockIntegrationTest {
2727

2828
@DynamicPropertySource
2929
static void redisProperties(DynamicPropertyRegistry registry) {
3030
registry.add(
31-
"spring.datasource.data.redis.host",
32-
RedissonTestContainerConfig.redisContainer::getHost);
31+
"spring.data.redis.host",
32+
RedisTestContainerConfig.redisContainer::getHost);
3333
registry.add(
34-
"spring.datasource.data.redis.port",
35-
() -> RedissonTestContainerConfig.redisContainer.getFirstMappedPort());
34+
"spring.data.redis.port",
35+
() -> RedisTestContainerConfig.redisContainer.getFirstMappedPort());
3636
}
3737

3838
@Autowired private TestLockService testLockService;

0 commit comments

Comments
 (0)