docker run redis
컨테이너에서 redis가 실행된다.
당연하게도, 로컬 환경에서는 컨테이너에서 실행된 redis에 접속할 수 없다.
연결할 수 없다고 나온다.
만약 이 둘을 연결해서 호스트 머신에서 컨테이너에 접속하고 싶을 때 Port Mapping을 사용할 수 있다.
Port Mapping을 하려면 컨테이너를 생성할 때 설정을 해줘야 한다.
아래와 같이 Port Mapping을 해주자.
docker run -it -p 4000:6379 redis
여기서 6379는 컨테이너 내에서 redis가 실행되는 포트이고, 이를 호스트 포트의 4000과 매핑해 준다는 뜻이다.
호스트 환경에서 아래와 같이 실행한다.
redis-cli -p 4000
일반 redis-cli는 접속이 안된다. 그 이유는 현재 호스트의 redis의 기본 포트는 6379이기 때문이다.
우리가 매핑한 4000에 접속하면 아래와 같이 잘 실행되는 것을 볼 수 있다.
하지만 일반적으로 개발할 때는 포트를 같은 것으로 맞춘다.
docker run -it -p 6379:6379 redis
이렇게 하면 현재 호스트의 6379 포트와 컨테이너의 6379 포트를 연결해 준다.
실제 개발에서 컨테이너 레디스를 호스트에서 사용하는 것과 비슷하게 활용한다.
'Infra > Docker' 카테고리의 다른 글
Docker volume 활용한 개발환경 구축 (0) | 2023.12.11 |
---|---|
Docker Image 생성과 DockerIgnore를 사용한 .env 관리, 캐싱 활용 (0) | 2023.12.11 |
Docker 명령어 정리 (0) | 2023.12.09 |