본문 바로가기
개발/Redis

Redis 설치 with docker

by 꼬마상어 2021. 1. 14.
반응형

Docker 실행

open --background -a Docker

open --background -a Docker

레디스 이미지 받아오기

Docker image pull redis

Docker image pull redis

redis는 기본적으로 6379 포트를 사용한다. ⇒ Dockerfile에서 EXPOSE 6379 로 되어있음!

Docker network 구성

바로 서버를 run하면 되지만, redis-cli도 같이 구동해서 통신해야하므로 2개의 컨테이너를 실행하여야하며, 그 두개의 컨테이너의 연결을 위하여 docker network 구성을 해야한다.

docker network create redis-net #네트워크 리스트 확인 docker network ls

docker network create redis-net #네트워크 리스트 확인 docker network ls

Redis 실행(서버)

# 기본 docker run -d --name redis -p 6379:6379 --network redis-net redis # 볼륨 설정하기 docker run --name redis -p 6379:6379 --network redis-net -v /Users/jiyeonpark/Desktop/redisvolume -d redis:latest redis-server --appendonly yes

# 기본 
docker run -d --name redis -p 6379:6379 --network redis-net redis 
# 볼륨 설정하기 
docker run --name redis -p 6379:6379 --network redis-net -v /Users/jiyeonpark/Desktop/redisvolume -d redis:latest redis-server --appendonly yes
  • #이름 설정
  • #포트 설정(기본: 6379)
  • #네트워크 설정
  • #볼륨 폴더 지정
  • #백그라운드로 실행

Redis-cli 접속

  • 데이터의 추가, 조회, 삭제를 위한 interface
  • docker network를 설정했기 때문에 위에 실행했던 컨테이너 이름을 사용하여 레디스 서버에 접속할 수 있다.

docker run -it --network redis-net --rm redis redis-cli -h redis

docker run -it --network redis-net --rm redis redis-cli -h redis
  • #네트워크 설정
  • #--rm : 실행할 때 컨테이너 id가 존재하면 삭제 후 run
  • -h 뒤에 붙은 컨테이너 명으로 redis-cli를 실행하여 redis server에 접속한다.

추가 설정이 필요하다면...

레디스 서버 포트 변경

  1. Docker용 redis.conf 파일을 만든다.
#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
  • 해당 conf파일을 지정해서 실행 : volume 지정

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
  • Config 설정을 Dockerfile 내에서 설정하는 법
  • https://yongho1037.tistory.com/699
  • log 확인

    docker logs redis
  • 변경된 포트로 client 접속

    docker run -it --link redis:latest --rm redis redis-cli -h redis -p 6000
  • 테스트

    > auth changeme #[redis.conf에서 입력한 비밀번호] > info

 

기타.. 알면 좋다..

  • Shell로 Docker 리눅스에 접속하기

    docker ps docker exec -it myredis /bin/bash

Refs

반응형

'개발 > Redis' 카테고리의 다른 글

redis 기본 명령어  (0) 2021.01.14
Redis의 개념  (0) 2021.01.14

댓글