[DB] 도커 컨테이너로 Redis 7.4 구축하기

 

 

 

redis.conf

rename-command FLUSHDB "원하는 문자열"
rename-command FLUSHALL "원하는 문자열"
rename-command DEBUG "원하는 문자열"
rename-command SAVE "원하는 문자열"

 

FLUSHDB, FLUSHALL, DEBUG, SAVE 에 대한 명령어를 변경하여 보안 강화

 

Dockerfile.yaml

# Redis 공식 이미지를 기반으로 사용
FROM redis:7.4-alpine

# Redis 설정 파일 컨테이너에 복사
COPY ./redis/redis.conf /etc/redis/redis.conf

# 작업 디렉토리 설정
WORKDIR /data

# Redis 서버 실행 시 사용할 명령어
CMD ["redis-server", "--save", "60", "1", "--loglevel", "warning", "--requirepass", "패스워드"]

 

레디스 이미지 빌드

docker build -t redis:dev .

 

docker-compose.yaml

services:
  app-redis:
    image: redis:dev
    container_name: app-redis
    restart: unless-stopped
    command: redis-server /etc/redis/redis.conf --requirepass password
    volumes:
      - app-redis-data:/data
    expose:
      - 6379
    security_opt:
      - no-new-privileges
    stdin_open: true
    tty: true
    networks:
      - app-network

networks:
  app-network:
    name: app-network
    driver: bridge
    external: true

volumes:
  app-redis-data:
    name: app-redis-data

 

 

Docker Compose 실행

docker compose up -d

 

 

Redis 접속

$ docker exec -it app-redis redis-cli
127.0.0.1:6379>