Docker Compose를 사용하여 IBM Container를 스케일 아웃
4111 단어 Bluemixdocker-composecontainer도커
소개
이전에 Docker Compose를 사용하여 IBM Container 관리 이라는 기사를 썼습니다. 이 기사에서는 docker-compose
를 사용하여 Bluemix의 IBM Container 수를 동적으로 변경할 수 있는지 확인해 봅니다.
마지막 회의
지난번에는 다음과 같은 두 개의 컨테이너를 scale
를 사용하여 IBM Container에 배포할 수 있음을 확인했습니다.
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
docker-compose를 사용하여 IBM Container를 스케일 아웃
그럼, 조속히 본제에 들어갑시다. docker-compose
명령을 사용하여 웹 컨테이너 수를 늘려 보았습니다.
$ docker-compose -f docker-compose-bluemix.yml scale web=3
WARNING: The "web" service specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.
Creating and starting 2 ...
Creating and starting 3 ...
Creating and starting 3 ... done
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
dockercompose_web_2 Up 172.31.0.162:5000->5000/tcp
dockercompose_web_3 Up 172.31.0.163:5000->5000/tcp
아무래도 WARNING이 나왔지만, web 컨테이너의 수가 3개로 늘어난 것 같습니다! 각 컨테이너의 IP 주소를 같은 호스트의 포트 번호 5000번을 할당한 것이 좋지 않은 것 같네요. 하지만, docker-compose
명령의 출력을 보면, 호스트 머신에 마음대로 새로운 IP 주소(172.31.0.162와 172.31.0.163)가 할당되어 각각을 새로운 컨테이너에 할당해, 일을 얻고 있는 것 같습니다. Bluemix의 대시보드 쪽도 확인해 보면. . .
3개의 컨테이너가 가동되고 있는 것을 확인할 수 있었습니다! 그런데 모처럼이므로 새로 만들어진 컨테이너 쪽에도 외부 IP 주소를 할당해 액세스해 봅시다. 덧붙여 내 Bluemix의 무료 계정에서는 외부 IP는 2개까지만 취득할 수 있으므로, 2개의 컨테이너에 외부 IP 주소를 할당합니다. docker-compose scale
에서 새 IP 주소를 얻고 주소를 늘린 컨테이너에 할당합니다.
$ cf ic ip bind 169.44.113.228 dockercompose_web_2
OK
The IP address was bound successfully.
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
dockercompose_web_2 Up 169.44.113.228:5000->5000/tcp
dockercompose_web_3 Up 172.31.0.171:5000->5000/tcp
각각의 IP 주소에 대해, 브라우저로 액세스 해 보면. . .
각 웹 응용 프로그램이 동일한 redis 데이터베이스 컨테이너에서 동일한 항목을 가져오고 각 웹 응용 프로그램이 값을 증가시키는 것처럼 보입니다!
요약
Docker Compose를 사용하여 IBM Container를 확장할 수 있음을 확인했습니다. 그러나 이대로는 수동으로 외부 IP 주소를 취득하고 그 IP를 새로 시작한 컨테이너에 할당할 필요가 있어 일상적인 느낌이군요. 다음에 이 쪽의 순서를 자동화하는 방법에 대해 검증하고 싶습니다.
Reference
이 문제에 관하여(Docker Compose를 사용하여 IBM Container를 스케일 아웃), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/smatsui@github/items/3791f9e144fcf6b7e516
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
지난번에는 다음과 같은 두 개의 컨테이너를
scale
를 사용하여 IBM Container에 배포할 수 있음을 확인했습니다.$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
docker-compose를 사용하여 IBM Container를 스케일 아웃
그럼, 조속히 본제에 들어갑시다. docker-compose
명령을 사용하여 웹 컨테이너 수를 늘려 보았습니다.
$ docker-compose -f docker-compose-bluemix.yml scale web=3
WARNING: The "web" service specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.
Creating and starting 2 ...
Creating and starting 3 ...
Creating and starting 3 ... done
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
dockercompose_web_2 Up 172.31.0.162:5000->5000/tcp
dockercompose_web_3 Up 172.31.0.163:5000->5000/tcp
아무래도 WARNING이 나왔지만, web 컨테이너의 수가 3개로 늘어난 것 같습니다! 각 컨테이너의 IP 주소를 같은 호스트의 포트 번호 5000번을 할당한 것이 좋지 않은 것 같네요. 하지만, docker-compose
명령의 출력을 보면, 호스트 머신에 마음대로 새로운 IP 주소(172.31.0.162와 172.31.0.163)가 할당되어 각각을 새로운 컨테이너에 할당해, 일을 얻고 있는 것 같습니다. Bluemix의 대시보드 쪽도 확인해 보면. . .
3개의 컨테이너가 가동되고 있는 것을 확인할 수 있었습니다! 그런데 모처럼이므로 새로 만들어진 컨테이너 쪽에도 외부 IP 주소를 할당해 액세스해 봅시다. 덧붙여 내 Bluemix의 무료 계정에서는 외부 IP는 2개까지만 취득할 수 있으므로, 2개의 컨테이너에 외부 IP 주소를 할당합니다. docker-compose scale
에서 새 IP 주소를 얻고 주소를 늘린 컨테이너에 할당합니다.
$ cf ic ip bind 169.44.113.228 dockercompose_web_2
OK
The IP address was bound successfully.
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
dockercompose_web_2 Up 169.44.113.228:5000->5000/tcp
dockercompose_web_3 Up 172.31.0.171:5000->5000/tcp
각각의 IP 주소에 대해, 브라우저로 액세스 해 보면. . .
각 웹 응용 프로그램이 동일한 redis 데이터베이스 컨테이너에서 동일한 항목을 가져오고 각 웹 응용 프로그램이 값을 증가시키는 것처럼 보입니다!
요약
Docker Compose를 사용하여 IBM Container를 확장할 수 있음을 확인했습니다. 그러나 이대로는 수동으로 외부 IP 주소를 취득하고 그 IP를 새로 시작한 컨테이너에 할당할 필요가 있어 일상적인 느낌이군요. 다음에 이 쪽의 순서를 자동화하는 방법에 대해 검증하고 싶습니다.
Reference
이 문제에 관하여(Docker Compose를 사용하여 IBM Container를 스케일 아웃), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/smatsui@github/items/3791f9e144fcf6b7e516
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ docker-compose -f docker-compose-bluemix.yml scale web=3
WARNING: The "web" service specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.
Creating and starting 2 ...
Creating and starting 3 ...
Creating and starting 3 ... done
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
dockercompose_web_2 Up 172.31.0.162:5000->5000/tcp
dockercompose_web_3 Up 172.31.0.163:5000->5000/tcp
$ cf ic ip bind 169.44.113.228 dockercompose_web_2
OK
The IP address was bound successfully.
$ docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
dockercompose_redis_1 Up
dockercompose_web_1 Up 169.44.119.192:5000->5000/tcp
dockercompose_web_2 Up 169.44.113.228:5000->5000/tcp
dockercompose_web_3 Up 172.31.0.171:5000->5000/tcp
Docker Compose를 사용하여 IBM Container를 확장할 수 있음을 확인했습니다. 그러나 이대로는 수동으로 외부 IP 주소를 취득하고 그 IP를 새로 시작한 컨테이너에 할당할 필요가 있어 일상적인 느낌이군요. 다음에 이 쪽의 순서를 자동화하는 방법에 대해 검증하고 싶습니다.
Reference
이 문제에 관하여(Docker Compose를 사용하여 IBM Container를 스케일 아웃), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/smatsui@github/items/3791f9e144fcf6b7e516텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)