Docker container실행했을 때, Redis컨테이너 연결

Ena JJJ·2023년 2월 24일
0

redis 컨테이너와 mofit-backend 컨테이너는 동일한 Docker network 내에 있어야 서로 통신할 수 있습니다. Docker 네트워크는 기본적으로 생성되는 bridge 네트워크 외에도, 사용자가 직접 생성할 수도 있습니다.

아래는 mofit-network라는 이름의 Docker network를 생성하고, 이를 사용해 mofit-backend 컨테이너와 redis 컨테이너를 실행하는 예시입니다.

  1. Docker network 생성
docker network create mofit-network
  1. 이제 redis 컨테이너를 생성합니다. 이때, 생성한 mofit-network 네트워크에 연결해야 합니다.
docker run -d --name mofit-redis --network mofit-network redis
  1. 마지막으로 eenaa/mofit-backend:latest 컨테이너를 생성합니다. 이때, --network 옵션을 이용하여 mofit-network에 연결해줍니다. 그리고 --env 옵션을 이용하여 redis 호스트와 포트 정보를 전달해줍니다.
docker run -d --name mofit-backend --network mofit-network -p 8080:8080 \
--env SPRING_REDIS_HOST=mofit-redis --env SPRING_REDIS_PORT=6379 eenaa/mofit-backend:latest

이렇게 설정하면 mofit-backend 컨테이너에서 mofit-redis 호스트와 6379 포트에 연결할 수 있습니다.

Docker Network

도커 네트워크(Docker network)는 컨테이너와 컨테이너 간의 통신을 위한 가상 네트워크를 설정하는 기능입니다. 이를 이용해 여러 개의 컨테이너를 하나의 네트워크에 연결하고, 각각의 컨테이너끼리 IP 주소를 부여하여 서로 통신할 수 있습니다. 또한 컨테이너와 호스트 머신 간의 통신도 가능합니다.

목록 보는 법 : docker network ls
삭제 하는 법 : docker network rm 네트워크ID

0개의 댓글