File tree Expand file tree Collapse file tree 3 files changed +60
-28
lines changed
Expand file tree Collapse file tree 3 files changed +60
-28
lines changed Original file line number Diff line number Diff line change 11services :
2- alloon :
2+ backend :
3+ container_name : backend
34 restart : always
45 env_file :
56 - docker/.env
67 build :
7- context : docker
8- dockerfile : Dockerfile
8+ context : .
9+ dockerfile : docker/ Dockerfile
910 ports :
1011 - " 8080:8080"
1112 depends_on :
1213 - db
13- - mem-db
14+ - redis
15+ - redis-init
16+ environment :
17+ - TZ=Asia/Seoul
18+ networks :
19+ - app-network
1420 db :
1521 image : postgres:latest
22+ container_name : postgres-db
1623 restart : always
1724 ports :
1825 - " 5432:5432"
1926 volumes :
20- - ./docker/init.sql:/docker-entrypoint-initdb.d/init.sql
27+ - ./docker/init.sql:/docker-entrypoint-initdb.d/init.sql:ro
2128 environment :
2229 POSTGRES_USER : postgres
2330 POSTGRES_PASSWORD : postgres!2#
24- POSTGRES_DB : allon_server
25- mem-db :
31+ POSTGRES_DB : photi_local_db
32+ networks :
33+ - app-network
34+ redis :
2635 image : redis:latest
36+ container_name : redis-db
2737 restart : always
2838 ports :
2939 - " 6379:6379"
40+ networks :
41+ - app-network
42+ redis-init :
43+ image : redis:latest
44+ container_name : redis-init
45+ restart : " no"
46+ depends_on :
47+ - redis
48+ entrypoint : [ "bash", "-c", "/init/redis-init.sh" ]
3049 volumes :
31- - ./docker/redis-init.sh:/redis-init.sh
32- command : [ "sh", "-c", "redis-server --daemonize yes && sleep 3 && bash /redis-init.sh && tail -f /dev/null" ]
50+ - ./docker/redis-init.sh:/init/redis-init.sh:ro
51+ networks :
52+ - app-network
53+
54+ networks :
55+ app-network :
56+ driver : bridge
Original file line number Diff line number Diff line change 11#! /bin/bash
2- echo " Waiting for Redis to start..."
3- until redis-cli ping | grep -q " PONG" ; do
4- echo " Redis is not ready yet. Waiting..."
5- sleep 1
2+ set -e
3+
4+ echo " [INFO] Initializing Redis data..."
5+
6+ declare -A hashtags=(
7+ [" 러닝" ]=10
8+ [" 게임" ]=20
9+ [" 건강식" ]=15
10+ [" 챌린지" ]=5
11+ [" 개발" ]=7
12+ [" 코틀린" ]=9
13+ [" iOS" ]=25
14+ [" 안드로이드" ]=15
15+ [" 스프링" ]=50
16+ [" 디자인" ]=36
17+ )
18+
19+ for tag in " ${! hashtags[@]} " ; do
20+ score=" ${hashtags[$tag]} "
21+ redis-cli -h redis ZADD popular:hashtags " $score " " $tag "
622done
723
8- echo " Redis initialization..."
9- redis-cli << EOF
10- ZADD popular:hashtags 10 "러닝"
11- ZADD popular:hashtags 20 "게임"
12- ZADD popular:hashtags 15 "건강식"
13- ZADD popular:hashtags 5 "챌린지"
14- ZADD popular:hashtags 7 "개발"
15- ZADD popular:hashtags 9 "코틀린"
16- ZADD popular:hashtags 25 "iOS"
17- ZADD popular:hashtags 15 "안드로이드"
18- ZADD popular:hashtags 50 "스프링"
19- ZADD popular:hashtags 36 "디자인"
20- ZRANGE popular:hashtags 0 -1 WITHSCORES
21- EOF
22- echo " Redis initialization completed."
24+ echo " [INFO] Initialized hashtags:"
25+ redis-cli -h redis ZRANGE popular:hashtags 0 -1 WITHSCORES
26+
27+ echo " [INFO] Redis initialization completed successfully"
Original file line number Diff line number Diff line change @@ -10,6 +10,9 @@ spring:
1010 ddl-auto : none
1111 flyway :
1212 enabled : false
13+ data :
14+ redis :
15+ host : ${SPRING_REDIS_HOST}
1316
1417cloud :
1518 aws :
You can’t perform that action at this time.
0 commit comments