728x90
컨테이너 내부에서 네트워크를 사용하는 방법
다수의 컨테이너를 연결
서로 통신하게 하는 방법
### 컨테이너 만들기 & 웹 통신하기(WWW)
- 컨테이너 내부에서 WWW 로 요청을 보내는 것은 작동한다. ( 특별한 설정 필요 없음 )
### 호스트 통신 작업을 위한 컨테이너 만들기
- 컨테이너와 로컬 MongoDB 와의 연결하는 법
- 특수 도메인을 이용한다. -> host.docker.internal
'mongodb://localhost:27017/swfavorites' 코드에서 해당 부분을 아래와 같이 바꾼다.
'mongodb://host.docker.internal:27017/swfavorites'
### 컨테이너와 컨테이너 간의 통신: 기본 솔루션
- 모든 컨테이너는 한 가지에만 집중하도록 하는 것이 좋다
- MongoDB 컨테이너 실행
docker run -d --name mongodb mongo
- IP 주소를 이용해서 연결할 수 있다.
docker container inspect mongo -> 자세히보기
'mongodb://172.17.0.2:27017/swfavorites' -> 코드 변경 ( 다른 컨테이너와 연결 가능 )
- mongoDB IP 가 변경될때마다 수정해주어야 하는 불편함 : 이상적이지 않다.
### Docker Networks 소개: 우아한 컨테이너 간 통신
- —network 옵션을 사용해서 하나의 network 에 넣을 수 있다.
- network는 직접 만들어주어야 한다 ( docker network —help 참고 )
docker network create favorites-net
- 두 개의 컨테이너가 동일한 네트워크의 일부분일 경우 다른 컨테이너 이름을 입력할 수 있다.
'mongodb://mongodb:27017/swfavorites' -> mongodb 라는 컨테이너 이름
docker run -d --name favorites --network favorites-net --rm -p 3000:3000 favorites-node
- 현재는 mongodb를 내리고 올리면 db의 데이터가 모두 지워지는데 다음 섹션에서 해결방법을 학습할 예정 -> 볼륨을 이용한다.
728x90
'Docker > Udemy Docker & Kubernetes' 카테고리의 다른 글
섹션3. 데이터 관리 및 볼륨으로 작업하기 (2) | 2023.11.26 |
---|---|
섹션2. Docker 이미지 & 컨테이너: 코어 빌딩 블록 (0) | 2023.11.24 |
섹션 1:시작하기 (1) | 2023.11.21 |
댓글