반응형
같은 컨테이너를 여러 개 만들어 사용할 때 문제가 되는 부분은 컨테이너 생성의 발견(Service Discovery)와 없어진 컨테이너 감지인데 스웜 모드는 서비스 발견 기능을 자체적으로 지원한다.
docker network create -d overlay discovery
서비스가 사용할 오버레이 네트워크를 생성한다.
docker service create --name server \\
--replicas 2 \\
--network discovery \\
alicek106/book:hostname
docker service create --name client \\
--network discovery \\
alicek106/book:curl \\
ping docker.com
서비스 두 개를 생성한다. client 서비스는 server 서비스에 http 요청을 보낼 컨테이너를 생성한다.
docker service ps client
컨테이너가 어디에 있는지 알아야 들어갈 수 있다. 컨테이너 ID를 확인하고
docker exec -it 컨테이너ID bash
를 입력해서 컨테이너 내부로 들어간다.
curl -s server | grep Hello
curl 명령어를 여러 번 보내면 매 번 다른 컨테이너에 접근하는 것을 확인할 수 있다.
docker service scale server=3
server 서비스의 컨테이너 레플리카를 3개로 늘려본다.
curl -s server | grep Hello
다시 curl명령어를 실행해 보면 새로 생성된 server 서비스의 컨테이너에 접근할 수 있다는 것을 확인할 수 있다.
📖 ← [ 시작하세요! 도커/쿠버네티스 ] 책을 참고하여 공부하였습니다.
반응형
'DevOps > Docker' 카테고리의 다른 글
[Docker] : bind 타입의 볼륨 생성 (0) | 2022.03.06 |
---|---|
[Docker] : volume 타입의 볼륨 생성 (0) | 2022.03.06 |
[Docker] : 사용자 정의 오버레이 네트워크 (0) | 2022.03.06 |
[Docker] : docker_gwbridge 네트워크 (0) | 2022.03.05 |
[Docker] : 오버레이 네트워크 (0) | 2022.03.05 |
댓글