다양한 방법이 있지만, Docker + Local 구성으로 배포하려고 한다.
차후에 Kubernetes를 학습한 뒤, Docker + Kubernetess + AWS EC2 구성으로 배포해보자.
각 서비스는 개별적인 IP Address를 할당 받아 서로 통신 한다.
IP 할당을 순차적으로 받기 때문에 다른 환경에서는 다른 IP로 할당 받을 수 있음.
-> 다른 서비스들이 변경된 IP에 대해서 재설정해야함.
-> 하지만, 같은 네트워크를 사용한다면 container name 으로 특정 서비스에 접속을 하게 되면 IP가 변경되더라도 사용가능.
(container id의 경우에는 IP가 변경 될 때 다시 만들어지므로 X)
Create Bridge Network
다양한 서비스들이 하나의 가상네트워크를 만들어 통신
Bridge network
$ docker network create --drive bridge [브릿지 이름]
Host network
- 네트워크를 호스트로 설정하면 호스트의 네트워크 환경을 그대로 사용
- 포트 포워딩 없이 내부 어플리케이션 사용
None network
- 네트워크를 사용하지 않음
- Io 네트워크만 사용, 외부와 단절
$ docker network create ecommerce-network
$ docker network ls
$ docker network create --gateway 172.18.0.1 --subnet 172.18.0.0/16 ecommerce-network
container name으로 서로 통신 가능해지도록 docker container의 네트워크 기능 사용할 것.
'DevOps. > Docker' 카테고리의 다른 글
[Docker] docker: Error response from daemon: Ports are not available: listen tcp 0.0.0.0:4369: bind: address already in use. (0) | 2022.01.28 |
---|---|
[Docker] RabbitMQ 컨테이너 구동하기 (0) | 2022.01.28 |
[Docker] Microservice 도커 이미지 생성하기 (0) | 2022.01.28 |
[Docker] Docker 컨테이너 (0) | 2022.01.28 |
[Docker] 컨테이너 가상화 (0) | 2022.01.28 |