[Redis] local에서 Redis 사용하기 / Docker 사용하여 Redis server 접속

YJ KIM·2022년 8월 27일
2
post-thumbnail

현재 프로젝트에서 redis를 적용해야 할 일이 생겼다.
인기 검색어를 구현해야 하는데, 이 과정에서 redis를 사용하여 인기 검색어를 구현하도록 할 것이다.

redis에 대한 부가적인 설명은 차후에 작성하는 것으로 하고
이 포스팅에서는 redis를 설치하고 이를 spring boot에서 사용하는 과정을 다룰 것이다.

원래는 AWS ec2에 redis 서버를 구축해야겠지만 현재 로컬에서 Redis를 사용하여 먼저 개발한 후 올릴 것이다.

  1. Docker 설치
  2. Redis 설정
  3. Redis 접속

위와 같은 과정으로 진행된다.

1. Docker 설치

Docker에 redis 올려서 쓸 거라 Docker 설치 먼저!
https://docs.docker.com/desktop/install/mac-install/
에서 설치해주면 된다.
m1 pro 쓰고 있어서 그냥 m1 으로 받음.

2. Redis 설정

Docker에 Redis image를 받아온 후 Redis를 run 해도 되지만,
redis-cli 또한 이용할 것이므로 두 개의 컨테이너를 구동하고 이 두 개의 컨테이너를 network로 연결해줘야 한다.

📍 Redis-cli를 사용하는 이유?
Redis cli에 대한 공식문서
The Redis command line interface (redis-cli) is a terminal program used to send commands to and read replies from the Redis server.
단순하게 Redis 사용을 더욱 편리하게 해주는 터미널 프로그램이다.

1. Redis Image 받아옴

docker image pull redis

2. Redis network 생성

redis-cli랑 redis-server 사이에 network 생성

docker network create redis-network

후 network 생성 확인

docker network ls  

3. Redis 서버 실행

docker run --name local-redis -p 6379:6379 --network redis-network -v redis_temp:/data -d redis:latest redis-server --appendonly yes

순서대로
1. local-radis 라는 이름으로 로컬-docker간 6379 포트 개방
2. redis-network라는 이름의 네트워크를 사용
3. 로컬의 redis_temp와 docker의 /data 연결
4. redis:latest image를 사용하여 백그라운드에서 서버 실행

3. Redis-cli 접속

현재 실행중인 Redis(Redis 컨테이너)에 Redis-cli로 접속

 docker run -it --network redis-network --rm redis:latest redis-cli -h local-redis

-h 뒤에 붙은 컨테이너 명(local-redis)로 redis-cli를 실행하여 redis server에 접속.
--rm : 실행 시에, 컨테이너 id가 존재하면 삭제 후 run

4. 실행 결과


위와 같이 6379 포트를 이용하여 Redis server 접속 성공.


참고한 포스팅
https://blossom6729.tistory.com/15
https://littleshark.tistory.com/68

profile
모르면 쓰지 말고 쓸 거면 알고 쓰자

0개의 댓글