Predixy 도커 컴포즈(Docker Compose)로 구성하는 방법
Predixy는 Redis와 같은 인메모리 데이터베이스를 캐싱하기 위한 프록시 서버입니다. 이를 Docker Compose를 사용하여 구성하는 방법은 다음과 같습니다.
1. Docker Compose 파일 생성
먼저, Predixy와 Redis를 함께 사용하는 Docker Compose 파일을 생성합니다. 예를 들어, docker-compose.yml 파일을 다음과 같이 작성합니다.
vim docker-compose.yml
version: '3'
services:
redis:
image: redis:latest
container_name: redis
hostname: redis
ports:
- "6379:6379"
predixy:
image: haandol/predixy:latest
container_name: predixy
hostname: predixy
ports:
- "7617:7617"
links:
- redis
environment:
PREDIXY_BACKENDS: "redis://redis:6379"
PREDIXY_LOG_LEVEL: "info"
이 Compose 파일에서는 Redis와 Predixy 두 개의 서비스를 정의합니다. Redis 서비스는 redis:latest 이미지를 사용하여 컨테이너를 생성하며, 호스트의 6379 포트와 컨테이너의 6379 포트를 연결합니다.
Predixy 서비스는 predixy/predixy:latest 이미지를 사용하여 컨테이너를 생성하며, 호스트의 7617 포트와 컨테이너의 7617 포트를 연결합니다. 또한, links 옵션을 사용하여 Redis 서비스와 연결합니다. 마지막으로, environment 옵션을 사용하여 Predixy의 환경 변수를 설정합니다.
2. Docker Compose 실행
Docker Compose 파일을 작성한 후에는 docker-compose up 명령을 사용하여 Compose를 실행할 수 있습니다. 이 명령을 실행하면 Redis와 Predixy 서비스가 함께 실행되며, Predixy는 Redis를 백엔드로 사용하여 캐싱을 수행합니다.
docker-compose config
docker-compose up -d
$ docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
predixy haandol/predixy:latest "/usr/local/bin/pred…" predixy 8 seconds ago Up 7 seconds 0.0.0.0:7617->7617/tcp
redis redis:latest "docker-entrypoint.s…" redis 8 seconds ago Up 8 seconds 0.0.0.0:6379->6379/tcp
redis 버전 정보 확인
docker-compose exec redis sh -c "redis-cli --version"
$ docker-compose exec redis sh -c "redis-cli --version"
redis-cli 7.0.9
predixy 버전 정보 확인
docker-compose exec predixy sh -c "predixy -v"
$ docker-compose exec predixy sh -c "predixy -v"
predixy predixy-1.0.4
이제 http://localhost:7617을 방문하여 Predixy 대시보드에 액세스하고 Redis 데이터를 캐싱하는지 확인할 수 있습니다.
레디스 클라이언트에서 테스트
docker run -it --rm --name redis-cli redis:latest sh -c "redis-cli -h localhost -p 7617 --version"
$ docker run -it --rm --name redis-cli redis:latest sh -c "redis-cli -h localhost -p 7617 --version"
redis-cli 7.0.9
- set
docker run -it --rm --name redis-cli --add-host=redis:host-gateway redis:latest sh -c "redis-cli -h redis -p 6379 set foo bar"
$ docker run -it --rm --name redis-cli --add-host=redis:host-gateway redis:latest sh -c "redis-cli -h redis -p 6379 set foo bar"
OK
- get
docker run -it --rm --name redis-cli --add-host=redis:host-gateway redis:latest sh -c "redis-cli -h redis -p 6379 get foo"
$ docker run -it --rm --name redis-cli --add-host=redis:host-gateway redis:latest sh -c "redis-cli -h redis -p 6379 get foo"
"bar"
'리눅스' 카테고리의 다른 글
리눅스 환경에서 Azul Zulu JDK를 설치하는 방법 (0) | 2023.03.30 |
---|---|
기업에서 무료로 사용할 수 있는 Java 제품군 (0) | 2023.03.30 |
Swapping 현상을 원인을 찾는 방법 (0) | 2023.03.26 |
스왑 메모리(Swap Memory)란 (0) | 2023.03.26 |
SSL 인증서와 개인 키를 하나의 파일로 합치는 방법(nginx 인증서 생성) (0) | 2023.03.24 |