본문 바로가기
DevOps/Docker

[Docker] : nginx 웹 서버 서비스 생성하기

by 오주현 2022. 3. 4.
반응형

—replica 옵션을 추가하고 Nginx 웹 서버 이미지를 이용해 서비스를 외부에 노출 시켜본다.

 

docker service create --name myweb \\
--replicas 2 \\
-p 80:80 \\
nginx

레플리카 컨테이너를 정의하고 이름을 설정하고 컨테이너 80번 포트를 각 노드의 80번 포트로 연결하는 서비스를 생성한다.

 

docker service ps myweb

생성된 컨테이너를 확인해 보면 스웜 클러스터 내의 노드 중 하나를 선택해 80번 포트로 접근, Nginx 웹 서버가 구동되는 것을 확인할 수 있다.

 

docker service scale myweb=4

명령어를 통해 레플리카셋의 수를 늘이거나 줄일 수 있다.

 

docker service ps myweb

컨테이너 목록을 다시 확이해 본다.

 

같은 노드에 컨테이너가 할당 된 것을 확인할 수 있지만 문제가 전혀 되지 않는다. 왜냐하면 각 노드의 80번 포트로 들어온 요청을 여러 컨테이너 중 1개로 redirect하기 때문이다. 결국 각 호스트의 어느 노드로 접근하던 4개의 컨테이너 중 1개에 접근하게 된다.

 

 


📖 ← [ 시작하세요! 도커/쿠버네티스 ] 책을 참고하여 공부하였습니다.

반응형

댓글