swarm, compose 서버 클라 통신하게 하는 녀석
도커 네트워크는 서버 사이드 기능이므로 Swarm 에도 적용이 가능합니다. 그러나 이 네트워크에도 종류가 있는데요. 아래와 같습니다.
- bridge
- 기본 네트워크 드라이버입니다. 만약에 아무런 드라이버를 지정하지 않은 경우 이 드라이버가 지정됩니다.
- Bridge Network 는 Standalone 컨테이너가 통신을 하기 위해서 설정하는 케이스입니다.
- host
- 마찬가지로 standalone 방식의 컨테이너를 위한 네트워크 드라이버입니다. 도커 호스트(여러분의 PC)와 컨테이너간의 네트워크 독립(isolation)을 해제해주는 역할을 합니다. 즉, bridge 는 고립, host 는 개방이라고 생각하면 간단합니다.
- 호스트와 독립하지 않는 관계로 호스트의 네트워크를 직접 사용하게됩니다.
- 호스트 네트워크는 Docker 17.06 이상에서 동작하는 Swarm 에서만 사용가능한 점을 유의해 주세요
- overlay
- 다수의 도커 데모늘 연결해주는 것이 Overlay 네트워크 입니다. 또한, Swarm 서비스들이 서로 통신하는 것을 가능하게 합니다.
- standalone 방식의 컨테이너와 swarm 서비스를 통신하게 하는데에도 overlay 를 사용할 수 있습니다.
- 즉, 이 전략은 OS 레벨에서 컨테이너간 라우팅을 설정을 할 필요가 없도록 해줍니다.
- macvlan
- Macvlan 은 각 컨테이너에 MAC 주소를 부여합니다. 따라서 네트워크 상에서 물리적인 기기로 보입니다.
- Docker 데몬은 트래픽을 MAC 주소에 기반하여 라우팅해줍니다.
- 만약, 여러분이 물리 네트워크로 접속해야하는 legacy 어플리케이션을 다룰 때 이 전략은 유효합니다.
- none
- 모든 네트워크를 비활성화 합니다. 이 전략은 Custom 네트워크 드라이버와 결합해서 사용할 때 쓰입니다.
- 그러나 Swarm 에서는 none 을 사용할 수 없습니다.
우리는 컨테이너간의 통신을 원하므로 overlay 또는 host 전략을 사용하여 적절하게 구성하는 계획을 수립할 수 있습니다.
쇼핑몰 사례로 알아보는 Docker Swarm 과 Compose 의 차이점
안녕하세요 코마 입니다. 오늘은 Docker 에서 Compose 와 Swarm 의 차이점에 대해 알아보겠습니다. 😺 도커는 가장 인기있는 컨테이너링 기술입니다. 그러나 오픈소스 기술이다보니 여러가지 개념들이 혼재되어 있는 경우가 있습니다. 그러나 지향하는 바는 분명하죠 그러한 차원에서 각 기술들을 조명할 필요가 있다고 생각했습니다. 이에, Swarm 과 Compose 의 차이를 쇼핑몰의 사례를 통해 소개해 드리도록 하겠습니다.
https://code-machina.github.io/2019/08/06/Difference-between-Docker-Composer-N-Swarm.html

Seonglae Cho