스프링부트로 Redis 테스트하기 전에 Redis 설치를 해보자.
brew로 임베디드 레디스를 설치하지 않는다면, 따로 Docker를 통해서 redis를 설치할 수 있다. 나는 Docker를 통해서 설치하도록 하겠다.
https://docs.docker.com/docker-for-mac/apple-silicon/
애플 M1 preview version을 다운받는다. 언젠가 정식버전이 나오길 기대하면서..
https://www.youtube.com/watch?v=xECyeupbn6c&ab_channel=AJTheEngineer
https://hub.docker.com/_/redis TAG란에서 다른 걸 받아도 된다.
docker pull redis:alpine //stable한 alpine 버전 땡겨받는다.
이미지는 설치되었다. 여기서 바로 서버를 구동해도 되지만, redis-cli도 같이 구동해서 통신을 해야 하기 때문에, 2개의 컨테이너를 실행할 것이며, 그 2개간 연결을 위해서 docker-network 구성을 먼저 해야 한다.
docker network create redis-net
docker network ls // 생성하고 확인
이제 redis를 실행하는데, 앞서 생성한 network 정보를 같이 집어넣고 실행한다.
sudo docker run --name my-redis -p 6397:6379 --network reids-net -v /Users/Redis:/data -d redis:alpine redis-server --appendonly yes
docker ps // 실행중인 프로세스(컨테이너) 확인
appendonly yes 옵션은 AOF방식으로 데이터를 저장(참고:Redis Persistence Introduction)하겠다는 의미입니다. 데이터는 기본적으로 /data 하위에 저장되며 외부에서 해당 폴더를 공유함으로써 해당 컨테이너를 지우고 새로 만들어도 해당 volume을 참고하게 하면 동일한 데이터를 유지 할 수 있습니다.
error while creating mount source path mkdir operation not permitted.
요렇게 블라블라 뜨면, 볼륨폴더를 만들고, 거기에 도컨 데스크탑에서 파일공유 설정하셈
이제 redis-cli로 해당 redis server에 접속하자
docker run -it --network reids-net --rm redis:alpine redis-cli -h my-redis
exit //빠져나가기
—rm: 실행할 때 컨테이너 아이디가 존재하면 삭제 후 run
redis-server 구동할때, -p 옵션으로 host 에 포트를 노출했기때문에, redis 가 설치된 로컬 pc 에서도 접속이 가능하다.
https://emflant.tistory.com/235
https://blog.naver.com/semtul79/222235108317
https://jistol.github.io/docker/2017/09/01/docker-redis/
#daemonize no # yes로 변경시 구동되지 않음
# bind 127.0.0.1
protected-mode no
port 6000 #변경하고자 하는 포트
#logfile "redis.log" #이 옵션 사용시 파일로 로그가 저장되고 프롬프트는 노출되지 않음
#workingdir을 지정
#dir /data
# SECURITY
requirepass changeme
# CLIENTS
maxclients 10000
docker run --rm --name redis -p 6000:6000 -v /Users/jiyeonpark/Desktop/redisvolume/redis.conf:/usr/local/etc/redis/redis.conf -d redis:latest redis-server /usr/local/etc/redis/redis.conf --appendonly yes
안녕하세요 운영자님
인카토스입니다.
먼저, 댓글로 인사를 드리게 된 점 양해 부탁 드립니다.
이렇게 연락 드린 이유는 이번에 저희가 제작한 도커 각티슈케이스 제품 협찬을 제안드리고 싶어서 연락 드렸습니다.
개발자들에게 많은 사랑은 받은 각티슈케이스입니다.
저희 상품 블로그 포스팅이 가능하실지 여쭙고자 연락드렸습니다.
아니면 클리앙,서버포럼, okky,2cpu,그누보드 등 가입되어 있으신 개발자 커뮤니티가 있으시다면 해당 커뮤니티에 아래와 비슷하게 게시글을 올려주실수 있을까요?
클리앙 : https://www.clien.net/service/board/park/17797443
연락드릴수 있는방법이 댓글밖에 보이지 않아 이렇게 먼저 연락드립니다.
협찬제안에 긍정적인 검토 부탁드리고 제안이 마음에 드신다면 하기 메일로 메일주시면 제품 보내드리도록 하겠습니다.
sungjh0726@naver.com
협찬제품 링크 : https://incatos.shop/surl/P/11